aboutsummaryrefslogtreecommitdiff
path: root/usr.bin/id
diff options
context:
space:
mode:
authorChristian S.J. Peron <csjp@FreeBSD.org>2007-10-14 00:52:30 +0000
committerChristian S.J. Peron <csjp@FreeBSD.org>2007-10-14 00:52:30 +0000
commit2e61a3d00afea7cac8026f46e990f988faecf5b0 (patch)
tree2d2d646a0f49a7e93987423d2211910c2838b201 /usr.bin/id
parent1bb9a085ebabcb1ef8fdec64e8e5c83de2303850 (diff)
downloadsrc-2e61a3d00afea7cac8026f46e990f988faecf5b0.tar.gz
src-2e61a3d00afea7cac8026f46e990f988faecf5b0.zip
Notes
Diffstat (limited to 'usr.bin/id')
-rw-r--r--usr.bin/id/id.c46
1 files changed, 39 insertions, 7 deletions
diff --git a/usr.bin/id/id.c b/usr.bin/id/id.c
index e5c448ebf645..d18e8b0ea788 100644
--- a/usr.bin/id/id.c
+++ b/usr.bin/id/id.c
@@ -313,14 +313,46 @@ void
auditid(void)
{
auditinfo_t auditinfo;
-
- if (getaudit(&auditinfo) < 0)
+ auditinfo_addr_t ainfo_addr;
+ int ret, extended;
+
+ extended = 0;
+ ret = getaudit(&auditinfo);
+ if (ret < 0 && errno == E2BIG) {
+ if (getaudit_addr(&ainfo_addr, sizeof(ainfo_addr)) < 0)
+ err(1, "getaudit_addr");
+ extended = 1;
+ } else if (ret < 0)
err(1, "getaudit");
- printf("auid=%d\n", auditinfo.ai_auid);
- printf("mask.success=0x%08x\n", auditinfo.ai_mask.am_success);
- printf("mask.failure=0x%08x\n", auditinfo.ai_mask.am_failure);
- printf("termid.port=0x%08x\n", auditinfo.ai_termid.port);
- printf("asid=%d\n", auditinfo.ai_asid);
+ if (extended != 0) {
+ (void) printf("auid=%d\n"
+ "mask.success=0x%08x\n"
+ "mask.failure=0x%08x\n"
+ "asid=%d\n"
+ "termid_addr.port=0x%08x\n"
+ "termid_addr.addr[0]=0x%08x\n"
+ "termid_addr.addr[1]=0x%08x\n"
+ "termid_addr.addr[2]=0x%08x\n"
+ "termid_addr.addr[3]=0x%08x\n",
+ ainfo_addr.ai_auid, ainfo_addr.ai_mask.am_success,
+ ainfo_addr.ai_mask.am_failure, ainfo_addr.ai_asid,
+ ainfo_addr.ai_termid.at_port,
+ ainfo_addr.ai_termid.at_addr[0],
+ ainfo_addr.ai_termid.at_addr[1],
+ ainfo_addr.ai_termid.at_addr[2],
+ ainfo_addr.ai_termid.at_addr[3]);
+ } else {
+ (void) printf("auid=%d\n"
+ "mask.success=0x%08x\n"
+ "mask.failure=0x%08x\n"
+ "asid=%d\n"
+ "termid.port=0x%08x\n"
+ "termid.machine=0x%08x\n",
+ auditinfo.ai_auid, auditinfo.ai_mask.am_success,
+ auditinfo.ai_mask.am_failure,
+ auditinfo.ai_asid, auditinfo.ai_termid.port,
+ auditinfo.ai_termid.machine);
+ }
}
#endif