Print this page
Revert exi_zone to exi_zoneid, and install exi_ne backpointer


 861         nfsauth_globals_t       *nag;
 862         struct netbuf           *taddrmask;
 863         struct netbuf           addr;   /* temporary copy of client's address */
 864         const struct netbuf     *claddr;
 865         avl_tree_t              *tree;
 866         struct auth_cache       ac;     /* used as a template for avl_find() */
 867         struct auth_cache_clnt  *c;
 868         struct auth_cache_clnt  acc;    /* used as a template for avl_find() */
 869         struct auth_cache       *p = NULL;
 870         int                     access;
 871 
 872         uid_t                   tmpuid;
 873         gid_t                   tmpgid;
 874         uint_t                  tmpngids;
 875         gid_t                   *tmpgids;
 876 
 877         avl_index_t             where;  /* used for avl_find()/avl_insert() */
 878 
 879         ASSERT(cr != NULL);
 880 
 881         ASSERT3P(curzone, ==, exi->exi_zone);
 882         nag = nfsauth_get_zg();
 883 
 884         /*
 885          * Now check whether this client already
 886          * has an entry for this flavor in the cache
 887          * for this export.
 888          * Get the caller's address, mask off the
 889          * parts of the address that do not identify
 890          * the host (port number, etc), and then hash
 891          * it to find the chain of cache entries.
 892          */
 893 
 894         claddr = svc_getrpccaller(req->rq_xprt);
 895         addr = *claddr;
 896         addr.buf = kmem_alloc(addr.maxlen, KM_SLEEP);
 897         bcopy(claddr->buf, addr.buf, claddr->len);
 898 
 899         SVC_GETADDRMASK(req->rq_xprt, SVC_TATTR_ADDRMASK, (void **)&taddrmask);
 900         ASSERT(taddrmask != NULL);
 901         addrmask(&addr, taddrmask);




 861         nfsauth_globals_t       *nag;
 862         struct netbuf           *taddrmask;
 863         struct netbuf           addr;   /* temporary copy of client's address */
 864         const struct netbuf     *claddr;
 865         avl_tree_t              *tree;
 866         struct auth_cache       ac;     /* used as a template for avl_find() */
 867         struct auth_cache_clnt  *c;
 868         struct auth_cache_clnt  acc;    /* used as a template for avl_find() */
 869         struct auth_cache       *p = NULL;
 870         int                     access;
 871 
 872         uid_t                   tmpuid;
 873         gid_t                   tmpgid;
 874         uint_t                  tmpngids;
 875         gid_t                   *tmpgids;
 876 
 877         avl_index_t             where;  /* used for avl_find()/avl_insert() */
 878 
 879         ASSERT(cr != NULL);
 880 
 881         ASSERT3P(curzone->zone_id, ==, exi->exi_zoneid);
 882         nag = nfsauth_get_zg();
 883 
 884         /*
 885          * Now check whether this client already
 886          * has an entry for this flavor in the cache
 887          * for this export.
 888          * Get the caller's address, mask off the
 889          * parts of the address that do not identify
 890          * the host (port number, etc), and then hash
 891          * it to find the chain of cache entries.
 892          */
 893 
 894         claddr = svc_getrpccaller(req->rq_xprt);
 895         addr = *claddr;
 896         addr.buf = kmem_alloc(addr.maxlen, KM_SLEEP);
 897         bcopy(claddr->buf, addr.buf, claddr->len);
 898 
 899         SVC_GETADDRMASK(req->rq_xprt, SVC_TATTR_ADDRMASK, (void **)&taddrmask);
 900         ASSERT(taddrmask != NULL);
 901         addrmask(&addr, taddrmask);