rfd_struct
volatile struct rfd_struct *rfd_last,*rfd_top,*rfd_first;
volatile struct rfd_struct *rfd = (struct rfd_struct *)ptr;
memset((char *) rfd,0,sizeof(struct rfd_struct)*(p->num_recv_buffs+rfdadd));
p->rfd_top = (struct rfd_struct *) make32(p->rfd_top->next); /* step to next RFD */
volatile struct rfd_struct *rfds=p->rfd_top;
rfds = (struct rfd_struct *) make32(rfds->next);