|
|
1.1 ! root 1: /* rosapservice.c - ROPM: hack loader */ ! 2: ! 3: #ifndef lint ! 4: static char *rcsid = "$Header: /f/osi/rosap/RCS/rosapservice.c,v 6.0 89/03/18 23:42:30 mrose Rel $"; ! 5: #endif ! 6: ! 7: /* ! 8: * $Header: /f/osi/rosap/RCS/rosapservice.c,v 6.0 89/03/18 23:42:30 mrose Rel $ ! 9: * ! 10: * Based on an TCP-based implementation by George Michaelson of University ! 11: * College London. ! 12: * ! 13: * ! 14: * $Log: rosapservice.c,v $ ! 15: * Revision 6.0 89/03/18 23:42:30 mrose ! 16: * Release 5.0 ! 17: * ! 18: */ ! 19: ! 20: /* ! 21: * NOTICE ! 22: * ! 23: * Acquisition, use, and distribution of this module and related ! 24: * materials are subject to the restrictions of a license agreement. ! 25: * Consult the Preface in the User's Manual for the full terms of ! 26: * this agreement. ! 27: * ! 28: */ ! 29: ! 30: ! 31: /* LINTLIBRARY */ ! 32: ! 33: #include <stdio.h> ! 34: #include <signal.h> ! 35: #include "ropkt.h" ! 36: ! 37: /* bind underlying service */ ! 38: ! 39: int RoSetService (sd, bfunc, roi) ! 40: int sd; ! 41: IFP bfunc; ! 42: struct RoSAPindication *roi; ! 43: { ! 44: SBV smask; ! 45: int result; ! 46: register struct assocblk *acb; ! 47: ! 48: missingP (bfunc); ! 49: missingP (roi); ! 50: ! 51: smask = sigioblock (); ! 52: ! 53: if ((acb = findacblk (sd)) == NULL) { ! 54: (void) sigiomask (smask); ! 55: return rosaplose (roi, ROS_PARAMETER, NULLCP, ! 56: "invalid association descriptor"); ! 57: } ! 58: ! 59: result = (*bfunc) (acb, roi); ! 60: ! 61: (void) sigiomask (smask); ! 62: ! 63: return result; ! 64: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.