diff options
| author | Robert Watson <rwatson@FreeBSD.org> | 2006-09-20 13:23:40 +0000 |
|---|---|---|
| committer | Robert Watson <rwatson@FreeBSD.org> | 2006-09-20 13:23:40 +0000 |
| commit | 04f11621df75b89adcaf30fe235f99f7362fcc33 (patch) | |
| tree | be65104b59db262d96b574c4eb7dba409c97727f /sys | |
| parent | 1db97bc63bba76c448c3f6eee519bc35cb546855 (diff) | |
Notes
Diffstat (limited to 'sys')
| -rw-r--r-- | sys/security/audit/audit_bsm.c | 32 |
1 files changed, 15 insertions, 17 deletions
diff --git a/sys/security/audit/audit_bsm.c b/sys/security/audit/audit_bsm.c index 016e46d20c231..72a2e6b6cf914 100644 --- a/sys/security/audit/audit_bsm.c +++ b/sys/security/audit/audit_bsm.c @@ -84,8 +84,7 @@ kau_open(void) struct au_record *rec; rec = malloc(sizeof(*rec), M_AUDITBSM, M_WAITOK); - rec->data = malloc(MAX_AUDIT_RECORD_SIZE * sizeof(u_char), - M_AUDITBSM, M_WAITOK | M_ZERO); + rec->data = NULL; TAILQ_INIT(&rec->token_q); rec->len = 0; rec->used = 1; @@ -119,23 +118,22 @@ kau_close(struct au_record *rec, struct timespec *ctime, short event) struct timeval tm; tot_rec_size = rec->len + AUDIT_HEADER_SIZE + AUDIT_TRAILER_SIZE; - if (tot_rec_size <= MAX_AUDIT_RECORD_SIZE) { - /* Create the header token */ - tm.tv_usec = ctime->tv_nsec / 1000; - tm.tv_sec = ctime->tv_sec; - hdr = au_to_header32_tm(tot_rec_size, event, 0, tm); - TAILQ_INSERT_HEAD(&rec->token_q, hdr, tokens); + rec->data = malloc(tot_rec_size, M_AUDITBSM, M_WAITOK | M_ZERO); + /* Create the header token */ + tm.tv_usec = ctime->tv_nsec / 1000; + tm.tv_sec = ctime->tv_sec; + hdr = au_to_header32_tm(tot_rec_size, event, 0, tm); + TAILQ_INSERT_HEAD(&rec->token_q, hdr, tokens); - trail = au_to_trailer(tot_rec_size); - TAILQ_INSERT_TAIL(&rec->token_q, trail, tokens); + trail = au_to_trailer(tot_rec_size); + TAILQ_INSERT_TAIL(&rec->token_q, trail, tokens); - /* Serialize token data to the record. */ - rec->len = tot_rec_size; - dptr = rec->data; - TAILQ_FOREACH(cur, &rec->token_q, tokens) { - memcpy(dptr, cur->t_data, cur->len); - dptr += cur->len; - } + /* Serialize token data to the record. */ + rec->len = tot_rec_size; + dptr = rec->data; + TAILQ_FOREACH(cur, &rec->token_q, tokens) { + memcpy(dptr, cur->t_data, cur->len); + dptr += cur->len; } } |
