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
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.
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]
23 * Copyright (c) 2018 Peter Tribble.
24 * Copyright 2004 Sun Microsystems, Inc. All rights reserved.
25 * Use is subject to license terms.
30 #include <auth_attr.h>
34 putauthattr(const authattr_t
*auth
, FILE *fp
)
43 if (fprintf(fp
, "%s:%s:%s:%s:%s:",
44 auth
->name
!= NULL
? auth
->name
: "",
45 auth
->res1
!= NULL
? auth
->res1
: "",
46 auth
->res2
!= NULL
? auth
->res2
: "",
47 auth
->short_desc
!= NULL
? auth
->short_desc
: "",
48 auth
->long_desc
!= NULL
? auth
->long_desc
: "") == EOF
)
53 for (i
= 0; i
< attrs
->length
; i
++) {
54 if (fprintf(fp
, "%s=%s%s",
55 data
[i
].key
!= NULL
? data
[i
].key
: "",
56 data
[i
].value
!= NULL
? data
[i
].value
: "",
57 i
< (attrs
->length
)-1 ? ";" : "") == EOF
)
61 if (putc('\n', fp
) == EOF
)
67 dogetauthattr(const char **list
)
72 if (list
== NULL
|| *list
== NULL
) {
74 while ((pauth
= getauthattr()) != NULL
)
75 (void) putauthattr(pauth
, stdout
);
78 for (; *list
!= NULL
; list
++) {
79 pauth
= getauthnam(*list
);
81 rc
= EXC_NAME_NOT_FOUND
;
83 (void) putauthattr(pauth
, stdout
);