|
|
1.1 ! root 1: /* dgalloc.c - dgalloc */ ! 2: ! 3: #include <conf.h> ! 4: #include <kernel.h> ! 5: #include <network.h> ! 6: ! 7: /*------------------------------------------------------------------------ ! 8: * dgalloc - allocate a datagram psuedo device and return descriptor ! 9: *------------------------------------------------------------------------ ! 10: */ ! 11: dgalloc() ! 12: { ! 13: struct dgblk *dgptr; ! 14: int i; ! 15: PStype ps; ! 16: ! 17: disable(ps); ! 18: for (i=0 ; i<Ndg ; i++) { ! 19: dgptr = &dgtab[i]; ! 20: if (dgptr->dg_state == DG_FREE) { ! 21: dgptr->dg_state = DG_USED; ! 22: restore(ps); ! 23: return(i); ! 24: } ! 25: } ! 26: restore(ps); ! 27: return(SYSERR); ! 28: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.