|
|
1.1 ! root 1: #include <stdio.h> ! 2: #include "generic.h" /* defines OPERATIONS and ERRORS */ ! 3: #include <isode/rosap.h> ! 4: #include <isode/isoservent.h> ! 5: ! 6: ! 7: int ros_indications (); ! 8: ! 9: ! 10: main (argc, argv, envp) ! 11: int argc; ! 12: char **argv, ! 13: **envp; ! 14: { ! 15: int result, ! 16: sd; ! 17: struct RoSAPstart ross; ! 18: register struct RoSAPstart *ros = &ross; ! 19: struct RoSAPindication rois; ! 20: register struct RoSAPindication *roi = &rois; ! 21: register struct RoSAPpreject *rop = &roi -> roi_preject; ! 22: ! 23: if (RoInit (argc, argv, ros, roi) == NOTOK) ! 24: error ("initialization fails: %s", RoErrString (rop -> rop_reason)); ! 25: ! 26: sd = ros -> ros_sd; ! 27: /* do authentication using ros -> ros_data here... */ ! 28: ROSFREE (ros); ! 29: ! 30: /* read command line arguments here... */ ! 31: ! 32: /* could use ROS_VALIDATE or ROS_BUSY instead and then exit */ ! 33: ! 34: if (RoBeginResponse (sd, ROS_ACCEPT, NULLPE, roi) == NOTOK) ! 35: error ("RO-BEGIN.RESPONSE: %s", RoErrString (rop -> rop_reason)); ! 36: ! 37: if (RoSetIndications (sd, ros_indication, roi) == NOTOK) ! 38: error ("RoSetIndications: %s", RoErrString (rop -> rop_reason)); ! 39: ! 40: for (;;) ! 41: pause (); ! 42: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.