diff options
| author | gww <gww@eng.sun.com> | 2010-03-11 11:53:26 -0800 |
|---|---|---|
| committer | gww <gww@eng.sun.com> | 2010-03-11 11:53:26 -0800 |
| commit | 047f6e6f42a3d50d3e38a05c00bf7dd3fafac726 (patch) | |
| tree | fee27947a3df8160f2f34f1f18c80970af297713 /usr/src/lib/libbsm/common/au_to.c | |
| parent | 46c08a974e0e3e8aa24a730da1270e5b046bda29 (diff) | |
| download | illumos-joyent-047f6e6f42a3d50d3e38a05c00bf7dd3fafac726.tar.gz | |
6914628 Implement the user object audit token PSARC/2010/001 User object audit token
PSARC/2010/001 User object audit token
6580704 passwd gww produces a less optimal audit record.
Diffstat (limited to 'usr/src/lib/libbsm/common/au_to.c')
| -rw-r--r-- | usr/src/lib/libbsm/common/au_to.c | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/usr/src/lib/libbsm/common/au_to.c b/usr/src/lib/libbsm/common/au_to.c index 9ee2dd7b7a..2e77248b4b 100644 --- a/usr/src/lib/libbsm/common/au_to.c +++ b/usr/src/lib/libbsm/common/au_to.c @@ -19,7 +19,7 @@ * CDDL HEADER END */ /* - * Copyright 2009 Sun Microsystems, Inc. All rights reserved. + * Copyright 2010 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ @@ -1211,6 +1211,34 @@ au_to_upriv(char sorf, char *priv) } /* + * au_to_user + * return s: + * pointer to a user token. + */ +token_t * +au_to_user(uid_t uid, char *username) +{ + token_t *token; /* local token */ + adr_t adr; /* adr memory stream header */ + char data_header = AUT_USER; /* header for this token */ + short bytes; /* length of string */ + + bytes = (short)strlen(username) + 1; + + token = get_token(sizeof (char) + sizeof (uid_t) + sizeof (short) + + bytes); + if (token == NULL) + return (NULL); + adr_start(&adr, token->tt_data); + adr_char(&adr, &data_header, 1); + adr_uid(&adr, &uid, 1); + adr_short(&adr, &bytes, 1); + adr_char(&adr, username, bytes); + + return (token); +} + +/* * au_to_xatom * return s: * pointer to a xatom token. |
