summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordjm@openbsd.org <djm@openbsd.org>2022-02-25 02:09:27 +0000
committerDamien Miller <djm@mindrot.org>2022-03-01 13:00:26 +1100
commit4a66dac052c5ff5047161853f36904607649e4f9 (patch)
tree291eed2ba949d074f19499a93348fc6ff9890fd9
parent6f117cb151efe138ac57bdd8e26165f350328f5f (diff)
upstream: save an unneccessary alloc/free, based on patch from
Martin Vahlensieck; ok dtucker@ OpenBSD-Commit-ID: 90ffbf1f837e509742f2c31a1fbf2c0fd376fd5f
-rw-r--r--monitor.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/monitor.c b/monitor.c
index c199cb9b..20b9f67b 100644
--- a/monitor.c
+++ b/monitor.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: monitor.c,v 1.231 2022/01/28 06:18:42 guenther Exp $ */
+/* $OpenBSD: monitor.c,v 1.232 2022/02/25 02:09:27 djm Exp $ */
/*
* Copyright 2002 Niels Provos <provos@citi.umich.edu>
* Copyright 2002 Markus Friedl <markus@openbsd.org>
@@ -709,7 +709,6 @@ mm_answer_sign(struct ssh *ssh, int sock, struct sshbuf *m)
int
mm_answer_pwnamallow(struct ssh *ssh, int sock, struct sshbuf *m)
{
- char *username;
struct passwd *pwent;
int r, allowed = 0;
u_int i;
@@ -719,14 +718,12 @@ mm_answer_pwnamallow(struct ssh *ssh, int sock, struct sshbuf *m)
if (authctxt->attempt++ != 0)
fatal_f("multiple attempts for getpwnam");
- if ((r = sshbuf_get_cstring(m, &username, NULL)) != 0)
+ if ((r = sshbuf_get_cstring(m, &authctxt->user, NULL)) != 0)
fatal_fr(r, "parse");
- pwent = getpwnamallow(ssh, username);
+ pwent = getpwnamallow(ssh, authctxt->user);
- authctxt->user = xstrdup(username);
- setproctitle("%s [priv]", pwent ? username : "unknown");
- free(username);
+ setproctitle("%s [priv]", pwent ? authctxt->user : "unknown");
sshbuf_reset(m);