Make `sun' global variable. It used by threads and could be corrupted
authormvs <mvs@openbsd.org>
Wed, 1 Dec 2021 10:24:40 +0000 (10:24 +0000)
committermvs <mvs@openbsd.org>
Wed, 1 Dec 2021 10:24:40 +0000 (10:24 +0000)
when main() thread exited.

regress/sys/kern/unconacc/unconacc.c
regress/sys/kern/undgram_conclose/undgram_conclose.c

index c687091..52ca734 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: unconacc.c,v 1.3 2021/11/29 21:25:09 mvs Exp $ */
+/* $OpenBSD: unconacc.c,v 1.4 2021/12/01 10:24:40 mvs Exp $ */
 
 /*
  * Copyright (c) 2021 Vitaliy Makkoveev <mvs@openbsd.org>
@@ -119,6 +119,8 @@ thr_conn(void *arg)
        return NULL;
 }
 
+static struct sockaddr_un sun;
+
 int
 main(int argc, char *argv[])
 {
@@ -127,7 +129,6 @@ main(int argc, char *argv[])
                .tv_nsec = 0,
        };
 
-       struct sockaddr_un sun;
        int s;
 
        int mib[2], ncpu;
index 678021d..8f54159 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: undgram_conclose.c,v 1.3 2021/11/29 21:25:09 mvs Exp $ */
+/* $OpenBSD: undgram_conclose.c,v 1.4 2021/12/01 10:24:40 mvs Exp $ */
 
 /*
  * Copyright (c) 2021 Vitaliy Makkoveev <mvs@openbsd.org>
@@ -97,6 +97,8 @@ thr_conn(void *arg)
        return NULL;
 }
 
+static struct sockaddr_un sun;
+
 int
 main(int argc, char *argv[])
 {
@@ -108,8 +110,6 @@ main(int argc, char *argv[])
        int mib[2], ncpu;
        size_t len;
 
-       struct sockaddr_un sun;
-       
        pthread_t thr;
        int error, i;