pwcopy() struct passwd that we're going to reuse across a bunch of
authordjm <djm@openbsd.org>
Fri, 12 Mar 2021 03:43:40 +0000 (03:43 +0000)
committerdjm <djm@openbsd.org>
Fri, 12 Mar 2021 03:43:40 +0000 (03:43 +0000)
library calls; bz3273 ok dtucker@

usr.bin/ssh/ssh-keygen.c

index 69886d4..7bc0275 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: ssh-keygen.c,v 1.427 2020/12/20 23:36:51 djm Exp $ */
+/* $OpenBSD: ssh-keygen.c,v 1.428 2021/03/12 03:43:40 djm Exp $ */
 /*
  * Author: Tatu Ylonen <ylo@cs.hut.fi>
  * Copyright (c) 1994 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -3130,6 +3130,7 @@ main(int argc, char **argv)
        pw = getpwuid(getuid());
        if (!pw)
                fatal("No user exists for uid %lu", (u_long)getuid());
+       pw = pwcopy(pw);
        if (gethostname(hostname, sizeof(hostname)) == -1)
                fatal("gethostname: %s", strerror(errno));