Annotation of 43BSD/contrib/xns/examples/passwd/PasswordLookup_client.c, revision 1.1.1.1

1.1       root        1: /*
                      2:  * Client stubs for PasswordLookup.
                      3:  */
                      4: #include "PasswordLookup_support.c"
                      5: 
                      6: LookupUidResults
                      7: LookupUid(_Connection, _BDTprocptr, uid)
                      8:        CourierConnection *_Connection;
                      9:        int (*_BDTprocptr)();
                     10:        Cardinal uid;
                     11: {
                     12:        LookupUidResults _Results;
                     13:        register Unspecified *_buf, *_bp;
                     14:        Boolean _errorflag;
                     15:        Cardinal _errtype;
                     16: 
                     17:        _buf = Allocate(1);
                     18:        _bp = _buf;
                     19:        _bp += externalize_Cardinal(&uid, _bp);
                     20:        SendCallMessage(_Connection, PasswordLookup_NUMBER, PasswordLookup_VERSION, 0, 1, _buf);
                     21:        Deallocate(_buf);
                     22:        MaybeCallBDTHandler(_Connection, _BDTprocptr);
                     23:        _bp = ReceiveReturnMessage(_Connection, &_errorflag);
                     24:        _buf = _bp;
                     25:        if (_errorflag) {
                     26:                _bp += internalize_Cardinal(&_errtype, _bp);
                     27:                switch (ERROR_OFFSET+_errtype) {
                     28:                case NoSuchUser:
                     29:                        raise(ERROR_OFFSET+_errtype, 0);
                     30:                        /*NOTREACHED*/
                     31:                default:
                     32:                        /* don't know how to unpack this */
                     33:                        raise(ERROR_OFFSET+_errtype, 0);
                     34:                        /*NOTREACHED*/
                     35:                }
                     36:        } else
                     37:                _bp += internalize_LookupUidResults(&_Results, _bp);
                     38:        Deallocate(_buf);
                     39:        return (_Results);
                     40: }
                     41: 
                     42: LookupUserResults
                     43: LookupUser(_Connection, _BDTprocptr, user)
                     44:        CourierConnection *_Connection;
                     45:        int (*_BDTprocptr)();
                     46:        String user;
                     47: {
                     48:        LookupUserResults _Results;
                     49:        register Unspecified *_buf, *_bp;
                     50:        Boolean _errorflag;
                     51:        Cardinal _errtype;
                     52:        register LongCardinal _n = 0;
                     53: 
                     54:        _n += sizeof_String(&user);
                     55:        _buf = Allocate(_n);
                     56:        _bp = _buf;
                     57:        _bp += externalize_String(&user, _bp);
                     58:        SendCallMessage(_Connection, PasswordLookup_NUMBER, PasswordLookup_VERSION, 1, _n, _buf);
                     59:        Deallocate(_buf);
                     60:        MaybeCallBDTHandler(_Connection, _BDTprocptr);
                     61:        _bp = ReceiveReturnMessage(_Connection, &_errorflag);
                     62:        _buf = _bp;
                     63:        if (_errorflag) {
                     64:                _bp += internalize_Cardinal(&_errtype, _bp);
                     65:                switch (ERROR_OFFSET+_errtype) {
                     66:                case NoSuchUser:
                     67:                        raise(ERROR_OFFSET+_errtype, 0);
                     68:                        /*NOTREACHED*/
                     69:                case OtherError: {
                     70:                        static T_cn754_2 _result;
                     71:                        _bp += internalize_T_cn754_2(&_result, _bp);
                     72:                        raise(ERROR_OFFSET+_errtype, (char *) &_result);
                     73:                        /*NOTREACHED*/
                     74:                        }
                     75:                default:
                     76:                        /* don't know how to unpack this */
                     77:                        raise(ERROR_OFFSET+_errtype, 0);
                     78:                        /*NOTREACHED*/
                     79:                }
                     80:        } else
                     81:                _bp += internalize_LookupUserResults(&_Results, _bp);
                     82:        Deallocate(_buf);
                     83:        return (_Results);
                     84: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.