aboutsummaryrefslogtreecommitdiff
path: root/usr.sbin/sa/usrdb.c
diff options
context:
space:
mode:
authorAndrew Gallatin <gallatin@FreeBSD.org>2000-10-26 17:35:46 +0000
committerAndrew Gallatin <gallatin@FreeBSD.org>2000-10-26 17:35:46 +0000
commite49012e8ea011d91f88ba50ba15fec991eb60cd0 (patch)
treea44e3c084e44ef216240f817b1331fa79b0c7743 /usr.sbin/sa/usrdb.c
parent870b024f5d5df417b31934b9c6fb2fc3b5ad6c1c (diff)
downloadsrc-e49012e8ea011d91f88ba50ba15fec991eb60cd0.tar.gz
src-e49012e8ea011d91f88ba50ba15fec991eb60cd0.zip
fix unaligned access errors by copying untyped data to properly aligned
locals PR: alpha/13912 obtained from: NetBSD tested by: Marcin Gryszkalis <dagoon@rs.math.uni.lodz.pl>
Notes
Notes: svn path=/head/; revision=67642
Diffstat (limited to 'usr.sbin/sa/usrdb.c')
-rw-r--r--usr.sbin/sa/usrdb.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/usr.sbin/sa/usrdb.c b/usr.sbin/sa/usrdb.c
index 0c7cb2746d46..9ca5f74c0de6 100644
--- a/usr.sbin/sa/usrdb.c
+++ b/usr.sbin/sa/usrdb.c
@@ -226,7 +226,7 @@ void
usracct_print()
{
DBT key, data;
- struct userinfo *ui;
+ struct userinfo uistore, *ui = &uistore;
double t;
int rv;
@@ -235,7 +235,7 @@ usracct_print()
warn("retrieving user accounting stats");
while (rv == 0) {
- ui = (struct userinfo *) data.data;
+ memcpy(ui, data.data, sizeof(struct userinfo));
printf("%-*s %9qu ", MAXLOGNAME - 1,
user_from_uid(ui->ui_uid, 0), ui->ui_calls);