Mercurial > illumos > onarm
annotate usr/src/cmd/lp/lib/access/files.c @ 4:1a15d5aaf794
synchronized with onnv_86 (6202) in onnv-gate
author | Koji Uno <koji.uno@sun.com> |
---|---|
date | Mon, 31 Aug 2009 14:38:03 +0900 |
parents | c9caec207d52 |
children |
rev | line source |
---|---|
0 | 1 /* |
2 * CDDL HEADER START | |
3 * | |
4 * The contents of this file are subject to the terms of the | |
5 * Common Development and Distribution License, Version 1.0 only | |
6 * (the "License"). You may not use this file except in compliance | |
7 * with the License. | |
8 * | |
9 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE | |
10 * or http://www.opensolaris.org/os/licensing. | |
11 * See the License for the specific language governing permissions | |
12 * and limitations under the License. | |
13 * | |
14 * When distributing Covered Code, include this CDDL HEADER in each | |
15 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. | |
16 * If applicable, add the following below this CDDL HEADER, with the | |
17 * fields enclosed by brackets "[]" replaced with your own identifying | |
18 * information: Portions Copyright [yyyy] [name of copyright owner] | |
19 * | |
20 * CDDL HEADER END | |
21 */ | |
22 /* | |
23 * Copyright 1993 Sun Microsystems, Inc. All rights reserved. | |
24 * Use is subject to license terms. | |
25 */ | |
26 | |
27 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ | |
28 /* All Rights Reserved */ | |
29 | |
30 | |
4
1a15d5aaf794
synchronized with onnv_86 (6202) in onnv-gate
Koji Uno <koji.uno@sun.com>
parents:
0
diff
changeset
|
31 #pragma ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.10 */ |
0 | 32 /* EMACS_MODES: !fill, lnumb, !overwrite, !nodelete, !picture */ |
33 | |
34 #include "errno.h" | |
35 #include "stdio.h" | |
36 #include "string.h" | |
37 #include "unistd.h" | |
38 #include "stdlib.h" | |
39 | |
40 #include "lp.h" | |
41 | |
42 /** | |
43 ** getaccessfile() - BUILD NAME OF ALLOW OR DENY FILE | |
44 **/ | |
45 | |
46 char * | |
47 #if defined(__STDC__) | |
48 getaccessfile ( | |
49 char * dir, | |
50 char * name, | |
51 char * prefix, | |
52 char * base | |
53 ) | |
54 #else | |
55 getaccessfile (dir, name, prefix, base) | |
56 char *dir, | |
57 *name, | |
58 *prefix, | |
59 *base; | |
60 #endif | |
61 { | |
62 register char *parent, | |
63 *file, | |
64 *f; | |
65 | |
66 /* | |
67 * It makes no sense talking about the access files if | |
68 * the directory for the form or printer doesn't exist. | |
69 */ | |
70 parent = makepath(dir, name, (char *)0); | |
71 if (!parent) | |
72 return (0); | |
73 if (Access(parent, F_OK) == -1) { | |
74 Free(parent); | |
75 return (0); | |
76 } | |
77 | |
78 if (!(f = makestr(prefix, base, (char *)0))) { | |
79 Free(parent); | |
80 errno = ENOMEM; | |
81 return (0); | |
82 } | |
83 file = makepath(parent, f, (char *)0); | |
84 Free (f); | |
85 Free (parent); | |
86 | |
87 return (file); | |
88 } |