diff options
author | deraadt <> | 2014-08-13 06:04:10 +0000 |
---|---|---|
committer | deraadt <> | 2014-08-13 06:04:10 +0000 |
commit | abff9ef992dc248cb2e46fe33202f854d93332a0 (patch) | |
tree | ad52e36007166f80289ebe2e074b10104f96d3f6 | |
parent | cdd05ba350a9c7821a9e036359193557b0f276c7 (diff) | |
download | openbsd-abff9ef992dc248cb2e46fe33202f854d93332a0.tar.gz openbsd-abff9ef992dc248cb2e46fe33202f854d93332a0.tar.bz2 openbsd-abff9ef992dc248cb2e46fe33202f854d93332a0.zip |
munmap correct object in (extremely unlikely, and effectively terminal)
case of failing to map the 2nd object.
found by Paul Maurers
-rw-r--r-- | src/lib/libcrypto/arc4random/arc4random_linux.h | 4 | ||||
-rw-r--r-- | src/lib/libcrypto/arc4random/arc4random_osx.h | 4 | ||||
-rw-r--r-- | src/lib/libcrypto/arc4random/arc4random_solaris.h | 4 | ||||
-rw-r--r-- | src/lib/libcrypto/crypto/arc4random_linux.h | 4 | ||||
-rw-r--r-- | src/lib/libcrypto/crypto/arc4random_osx.h | 4 | ||||
-rw-r--r-- | src/lib/libcrypto/crypto/arc4random_solaris.h | 4 |
6 files changed, 12 insertions, 12 deletions
diff --git a/src/lib/libcrypto/arc4random/arc4random_linux.h b/src/lib/libcrypto/arc4random/arc4random_linux.h index 7acba3f78e..123525f2f1 100644 --- a/src/lib/libcrypto/arc4random/arc4random_linux.h +++ b/src/lib/libcrypto/arc4random/arc4random_linux.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: arc4random_linux.h,v 1.7 2014/07/20 20:51:13 bcook Exp $ */ | 1 | /* $OpenBSD: arc4random_linux.h,v 1.8 2014/08/13 06:04:10 deraadt Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Copyright (c) 1996, David Mazieres <dm@uun.org> | 4 | * Copyright (c) 1996, David Mazieres <dm@uun.org> |
@@ -76,7 +76,7 @@ _rs_allocate(struct _rs **rsp, struct _rsx **rsxp) | |||
76 | 76 | ||
77 | if ((*rsxp = mmap(NULL, sizeof(**rsxp), PROT_READ|PROT_WRITE, | 77 | if ((*rsxp = mmap(NULL, sizeof(**rsxp), PROT_READ|PROT_WRITE, |
78 | MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED) { | 78 | MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED) { |
79 | munmap(*rsxp, sizeof(**rsxp)); | 79 | munmap(*rsp, sizeof(**rsp)); |
80 | return (-1); | 80 | return (-1); |
81 | } | 81 | } |
82 | 82 | ||
diff --git a/src/lib/libcrypto/arc4random/arc4random_osx.h b/src/lib/libcrypto/arc4random/arc4random_osx.h index c14e044fe2..32cbccd1ed 100644 --- a/src/lib/libcrypto/arc4random/arc4random_osx.h +++ b/src/lib/libcrypto/arc4random/arc4random_osx.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: arc4random_osx.h,v 1.7 2014/07/20 20:51:13 bcook Exp $ */ | 1 | /* $OpenBSD: arc4random_osx.h,v 1.8 2014/08/13 06:04:10 deraadt Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Copyright (c) 1996, David Mazieres <dm@uun.org> | 4 | * Copyright (c) 1996, David Mazieres <dm@uun.org> |
@@ -70,7 +70,7 @@ _rs_allocate(struct _rs **rsp, struct _rsx **rsxp) | |||
70 | 70 | ||
71 | if ((*rsxp = mmap(NULL, sizeof(**rsxp), PROT_READ|PROT_WRITE, | 71 | if ((*rsxp = mmap(NULL, sizeof(**rsxp), PROT_READ|PROT_WRITE, |
72 | MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED) { | 72 | MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED) { |
73 | munmap(*rsxp, sizeof(**rsxp)); | 73 | munmap(*rsp, sizeof(**rsp)); |
74 | return -1; | 74 | return -1; |
75 | } | 75 | } |
76 | 76 | ||
diff --git a/src/lib/libcrypto/arc4random/arc4random_solaris.h b/src/lib/libcrypto/arc4random/arc4random_solaris.h index 2082a4728f..a0385ce154 100644 --- a/src/lib/libcrypto/arc4random/arc4random_solaris.h +++ b/src/lib/libcrypto/arc4random/arc4random_solaris.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: arc4random_solaris.h,v 1.7 2014/07/20 20:51:13 bcook Exp $ */ | 1 | /* $OpenBSD: arc4random_solaris.h,v 1.8 2014/08/13 06:04:10 deraadt Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Copyright (c) 1996, David Mazieres <dm@uun.org> | 4 | * Copyright (c) 1996, David Mazieres <dm@uun.org> |
@@ -70,7 +70,7 @@ _rs_allocate(struct _rs **rsp, struct _rsx **rsxp) | |||
70 | 70 | ||
71 | if ((*rsxp = mmap(NULL, sizeof(**rsxp), PROT_READ|PROT_WRITE, | 71 | if ((*rsxp = mmap(NULL, sizeof(**rsxp), PROT_READ|PROT_WRITE, |
72 | MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED) { | 72 | MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED) { |
73 | munmap(*rsxp, sizeof(**rsxp)); | 73 | munmap(*rsp, sizeof(**rsp)); |
74 | return (-1); | 74 | return (-1); |
75 | } | 75 | } |
76 | 76 | ||
diff --git a/src/lib/libcrypto/crypto/arc4random_linux.h b/src/lib/libcrypto/crypto/arc4random_linux.h index 7acba3f78e..123525f2f1 100644 --- a/src/lib/libcrypto/crypto/arc4random_linux.h +++ b/src/lib/libcrypto/crypto/arc4random_linux.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: arc4random_linux.h,v 1.7 2014/07/20 20:51:13 bcook Exp $ */ | 1 | /* $OpenBSD: arc4random_linux.h,v 1.8 2014/08/13 06:04:10 deraadt Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Copyright (c) 1996, David Mazieres <dm@uun.org> | 4 | * Copyright (c) 1996, David Mazieres <dm@uun.org> |
@@ -76,7 +76,7 @@ _rs_allocate(struct _rs **rsp, struct _rsx **rsxp) | |||
76 | 76 | ||
77 | if ((*rsxp = mmap(NULL, sizeof(**rsxp), PROT_READ|PROT_WRITE, | 77 | if ((*rsxp = mmap(NULL, sizeof(**rsxp), PROT_READ|PROT_WRITE, |
78 | MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED) { | 78 | MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED) { |
79 | munmap(*rsxp, sizeof(**rsxp)); | 79 | munmap(*rsp, sizeof(**rsp)); |
80 | return (-1); | 80 | return (-1); |
81 | } | 81 | } |
82 | 82 | ||
diff --git a/src/lib/libcrypto/crypto/arc4random_osx.h b/src/lib/libcrypto/crypto/arc4random_osx.h index c14e044fe2..32cbccd1ed 100644 --- a/src/lib/libcrypto/crypto/arc4random_osx.h +++ b/src/lib/libcrypto/crypto/arc4random_osx.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: arc4random_osx.h,v 1.7 2014/07/20 20:51:13 bcook Exp $ */ | 1 | /* $OpenBSD: arc4random_osx.h,v 1.8 2014/08/13 06:04:10 deraadt Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Copyright (c) 1996, David Mazieres <dm@uun.org> | 4 | * Copyright (c) 1996, David Mazieres <dm@uun.org> |
@@ -70,7 +70,7 @@ _rs_allocate(struct _rs **rsp, struct _rsx **rsxp) | |||
70 | 70 | ||
71 | if ((*rsxp = mmap(NULL, sizeof(**rsxp), PROT_READ|PROT_WRITE, | 71 | if ((*rsxp = mmap(NULL, sizeof(**rsxp), PROT_READ|PROT_WRITE, |
72 | MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED) { | 72 | MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED) { |
73 | munmap(*rsxp, sizeof(**rsxp)); | 73 | munmap(*rsp, sizeof(**rsp)); |
74 | return -1; | 74 | return -1; |
75 | } | 75 | } |
76 | 76 | ||
diff --git a/src/lib/libcrypto/crypto/arc4random_solaris.h b/src/lib/libcrypto/crypto/arc4random_solaris.h index 2082a4728f..a0385ce154 100644 --- a/src/lib/libcrypto/crypto/arc4random_solaris.h +++ b/src/lib/libcrypto/crypto/arc4random_solaris.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: arc4random_solaris.h,v 1.7 2014/07/20 20:51:13 bcook Exp $ */ | 1 | /* $OpenBSD: arc4random_solaris.h,v 1.8 2014/08/13 06:04:10 deraadt Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Copyright (c) 1996, David Mazieres <dm@uun.org> | 4 | * Copyright (c) 1996, David Mazieres <dm@uun.org> |
@@ -70,7 +70,7 @@ _rs_allocate(struct _rs **rsp, struct _rsx **rsxp) | |||
70 | 70 | ||
71 | if ((*rsxp = mmap(NULL, sizeof(**rsxp), PROT_READ|PROT_WRITE, | 71 | if ((*rsxp = mmap(NULL, sizeof(**rsxp), PROT_READ|PROT_WRITE, |
72 | MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED) { | 72 | MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED) { |
73 | munmap(*rsxp, sizeof(**rsxp)); | 73 | munmap(*rsp, sizeof(**rsp)); |
74 | return (-1); | 74 | return (-1); |
75 | } | 75 | } |
76 | 76 | ||