|
|
1.1 ! root 1: /* ! 2: * Copyright (c) 1983 Regents of the University of California. ! 3: * All rights reserved. The Berkeley software License Agreement ! 4: * specifies the terms and conditions for redistribution. ! 5: */ ! 6: ! 7: #if defined(LIBC_SCCS) && !defined(lint) ! 8: static char sccsid[] = "@(#)opendir.c 5.2 (Berkeley) 3/9/86"; ! 9: #endif LIBC_SCCS and not lint ! 10: ! 11: #include <sys/param.h> ! 12: #include <sys/dir.h> ! 13: ! 14: /* ! 15: * open a directory. ! 16: */ ! 17: DIR * ! 18: opendir(name) ! 19: char *name; ! 20: { ! 21: register DIR *dirp; ! 22: register int fd; ! 23: ! 24: if ((fd = open(name, 0)) == -1) ! 25: return NULL; ! 26: if ((dirp = (DIR *)malloc(sizeof(DIR))) == NULL) { ! 27: close (fd); ! 28: return NULL; ! 29: } ! 30: dirp->dd_fd = fd; ! 31: dirp->dd_loc = 0; ! 32: return dirp; ! 33: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.