• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-12-stable/sys/fs/nfsserver/

Lines Matching refs:newrp

280 static int nfsrc_getudp(struct nfsrv_descript *nd, struct nfsrvcache *newrp);
281 static int nfsrc_gettcp(struct nfsrv_descript *nd, struct nfsrvcache *newrp);
332 struct nfsrvcache *newrp;
337 newrp = malloc(sizeof (struct nfsrvcache),
339 NFSBZERO((caddr_t)newrp, sizeof (struct nfsrvcache));
341 newrp->rc_flag = RC_NFSV4;
343 newrp->rc_flag = RC_NFSV3;
345 newrp->rc_flag = RC_NFSV2;
346 newrp->rc_xid = nd->nd_retxid;
347 newrp->rc_proc = nd->nd_procnum;
348 newrp->rc_sockref = nd->nd_sockref;
349 newrp->rc_cachetime = nd->nd_tcpconntime;
351 newrp->rc_flag |= RC_SAMETCPCONN;
353 newrp->rc_flag |= RC_UDP;
354 ret = nfsrc_getudp(nd, newrp);
356 ret = nfsrc_gettcp(nd, newrp);
368 nfsrc_getudp(struct nfsrv_descript *nd, struct nfsrvcache *newrp)
377 mutex = nfsrc_cachemutex(newrp);
378 hp = NFSRCUDPHASH(newrp->rc_xid);
382 if (newrp->rc_xid == rp->rc_xid &&
383 newrp->rc_proc == rp->rc_proc &&
384 (newrp->rc_flag & rp->rc_flag & RC_NFSVERS) &&
424 free(newrp, M_NFSRVCACHE);
432 newrp->rc_flag |= RC_INPROG;
435 newrp->rc_inet = saddr->sin_addr.s_addr;
438 NFSBCOPY((caddr_t)&saddr6->sin6_addr, (caddr_t)&newrp->rc_inet6,
440 newrp->rc_flag |= RC_INETIPV6;
442 LIST_INSERT_HEAD(hp, newrp, rc_hash);
443 TAILQ_INSERT_TAIL(&nfsrvudplru, newrp, rc_lru);
445 nd->nd_rp = newrp;
602 nfsrc_gettcp(struct nfsrv_descript *nd, struct nfsrvcache *newrp)
611 mutex = nfsrc_cachemutex(newrp);
612 hp = NFSRCHASH(newrp->rc_xid);
613 newrp->rc_reqlen = nfsrc_getlenandcksum(nd->nd_mrep, &newrp->rc_cksum);
624 if (newrp->rc_xid == rp->rc_xid &&
626 ((newrp->rc_flag & RC_SAMETCPCONN) &&
627 newrp->rc_sockref == rp->rc_sockref)) &&
628 (newrp->rc_flag & rp->rc_flag & RC_NFSVERS) &&
629 newrp->rc_proc == rp->rc_proc &&
630 ((newrp->rc_flag & RC_NFSV4) &&
631 newrp->rc_sockref != rp->rc_sockref &&
632 newrp->rc_cachetime >= rp->rc_cachetime)
633 && newrp->rc_reqlen == rp->rc_reqlen &&
634 newrp->rc_cksum == rp->rc_cksum) {
683 if (newrp->rc_sockref == rp->rc_sockref)
692 if (newrp->rc_sockref == rp->rc_sockref)
701 if (newrp->rc_sockref == rp->rc_sockref)
711 free(newrp, M_NFSRVCACHE);
721 newrp->rc_cachetime = NFSD_MONOSEC;
722 newrp->rc_flag |= RC_INPROG;
723 LIST_INSERT_HEAD(hp, newrp, rc_hash);
725 nd->nd_rp = newrp;