|
|
1.1 root 1: /*-
2: * Copyright (c) 1979 The Regents of the University of California.
3: * All rights reserved.
4: *
5: * Redistribution and use in source and binary forms are permitted
6: * provided that: (1) source distributions retain this entire copyright
7: * notice and comment, and (2) distributions including binaries display
8: * the following acknowledgement: ``This product includes software
9: * developed by the University of California, Berkeley and its contributors''
10: * in the documentation or other materials provided with the distribution
11: * and in all advertising materials mentioning features or use of this
12: * software. Neither the name of the University nor the names of its
13: * contributors may be used to endorse or promote products derived
14: * from this software without specific prior written permission.
15: * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
16: * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
17: * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
18: */
19:
20: #ifndef lint
21: static char sccsid[] = "@(#)REMOVE.c 1.5 (Berkeley) 4/9/90";
22: #endif /* not lint */
23:
24: #include "h00vars.h"
25:
26: REMOVE(name, namlim)
27:
28: char *name;
29: long namlim;
30: {
31: register int cnt;
32: register int maxnamlen = namlim;
33: char namebuf[NAMSIZ];
34:
35: /*
36: * trim trailing blanks, and insure that the name
37: * will fit into the file structure
38: */
39: for (cnt = 0; cnt < maxnamlen; cnt++)
40: if (name[cnt] == '\0' || name[cnt] == ' ')
41: break;
42: if (cnt >= NAMSIZ) {
43: ERROR("%s: File name too long\n", name);
44: return;
45: }
46: maxnamlen = cnt;
47: /*
48: * put the name into the buffer with null termination
49: */
50: for (cnt = 0; cnt < maxnamlen; cnt++)
51: namebuf[cnt] = name[cnt];
52: namebuf[cnt] = '\0';
53: /*
54: * unlink the file
55: */
56: if (unlink(namebuf)) {
57: PERROR("Could not remove ", namebuf);
58: return;
59: }
60: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.