- 09 Mar, 2022 3 commits
-
-
Wouter Verhelst authored
-
Wouter Verhelst authored
[backport to 3.15.2: drop the bit for "no_optgo", which did not exist yet in that version]
-
Wouter Verhelst authored
When a user sends a name length value of 0xffffffff, nbd-server will try to allocate one more byte for the \0 at the end, but that will result in an integer overflow and a malloc(0), with the resulting write being to a dangling pointer. Fix by constraining the string size to 4096 bytes, as recommended by the protocol standard. [backport to 3.15.2: drop the NBD_OPT_INFO/NBD_OPT_GO part, which did not exist yet in that version] CVE-2022-26495 Reported-By:
王多 <duo.wang@chaitin.com> Signed-Off-By:
Wouter Verhelst <w@uter.be>
-
- 24 Apr, 2017 2 commits
-
-
Wouter Verhelst authored
-
Wouter Verhelst authored
Although the configuration file specified a validity of 3650 days (i.e., almost 10 years), the actual certificate in this directory was generated with a certificate validity of 1 year. It expired on april 19th, 2017 (i.e., 5 days ago), causing the test suite to fail from now on. Fix by regenerating the certificate (not the keys) of the certificate with the actual configuration in this directory. Signed-off-by:
Wouter Verhelst <w@uter.be>
-
- 22 Mar, 2017 1 commit
-
-
Wouter Verhelst authored
-
- 21 Mar, 2017 9 commits
-
-
Wouter Verhelst authored
-
Wouter Verhelst authored
-
Wouter Verhelst authored
The "if GNUTLS" conditional was nested inside an "if CLIENT" conditional. That made sense for the client bits, but not for the server bits. Move those out into their rightful place.
-
Wouter Verhelst authored
-
Wouter Verhelst authored
-
The fix for #840612 only fixed the ipv4 case, the following should fix it for ipv6 as well
-
Wouter Verhelst authored
-
Wouter Verhelst authored
-
LTSP uses NFS-like export names, and expects a "/" in the name to be part of an export name, rather than it being the delimiter between a port and an export name. Since NFS-like export names don't have a port number, we can special-case the ":/" format, and use the : as a delimiter then.
-
- 21 Feb, 2017 3 commits
-
-
Wouter Verhelst authored
-
Wouter Verhelst authored
-
Wouter Verhelst authored
Tagging nbd 3.15.2
-
- 23 Jan, 2017 4 commits
-
-
Wouter Verhelst authored
AC_SUBST'ing the nbd-client program worked when we didn't need to compile the client twice. Now that we do, this makes us try to compile the minimal (i.e., non-TLS) client even if we're on a system where the client can't be compiled. This is obviously wrong. Fix it by using AM_CONDITIONAL a second time, and nesting the whole GnuTLS conditional below that. Signed-off-by:
Wouter Verhelst <w@uter.be> -
Wouter Verhelst authored
The introduction of multithread handling of requests failed to consider what happens with copyonwrite enabled. We would seek, then read (or write), a file. If we have copyonwrite enabled, this fails badly in that two threads can race against eachother for the current file pointer. Instead, we should use pread() or pwrite() to read from offset without relying on the current file offset, as explained in #43. Remove the myseek() function to ensure we don't make use of it anymore, and fix up all callers. The only exception where we can still use lseek() safely is in the open_treefile() function, since there we hold a mutex and hence we can't race against other threads. TODO: test whether this fixes the problem. Signed-off-by:
Wouter Verhelst <w@uter.be> -
Wouter Verhelst authored
AC_SUBST'ing the nbd-client program worked when we didn't need to compile the client twice. Now that we do, this makes us try to compile the minimal (i.e., non-TLS) client even if we're on a system where the client can't be compiled. This is obviously wrong. Fix it by using AM_CONDITIONAL a second time, and nesting the whole GnuTLS conditional below that. Signed-off-by:
Wouter Verhelst <w@uter.be> -
Wouter Verhelst authored
The introduction of multithread handling of requests failed to consider what happens with copyonwrite enabled. We would seek, then read (or write), a file. If we have copyonwrite enabled, this fails badly in that two threads can race against eachother for the current file pointer. Instead, we should use pread() or pwrite() to read from offset without relying on the current file offset, as explained in #43. Remove the myseek() function to ensure we don't make use of it anymore, and fix up all callers. The only exception where we can still use lseek() safely is in the open_treefile() function, since there we hold a mutex and hence we can't race against other threads. TODO: test whether this fixes the problem. Signed-off-by:
Wouter Verhelst <w@uter.be>
-
- 22 Jan, 2017 1 commit
-
-
Wouter Verhelst authored
-
- 17 Jan, 2017 1 commit
-
-
Wouter Verhelst authored
Closes #45
-
- 20 Dec, 2016 14 commits
-
-
Wouter Verhelst authored
-
Wouter Verhelst authored
-
Wouter Verhelst authored
-
Wouter Verhelst authored
-
Wouter Verhelst authored
-
Wouter Verhelst authored
The options are supposed to be alphabetically ranked, but they weren't anymore. Fix that. Signed-off-by:
Wouter Verhelst <w@uter.be> -
Wouter Verhelst authored
Signed-off-by:
Wouter Verhelst <w@uter.be> -
Wouter Verhelst authored
GnuTLS <= 3.3 does not initialize at load time, and requires an explicit call to gnutls_global_init(). Newer versions don't require it, but don't break if the call is absent, either. Add it for the benefit of older versions of GnuTLS Signed-off-by:
Wouter Verhelst <w@uter.be> -
Wouter Verhelst authored
-
Wouter Verhelst authored
Tagging 3.15.1
-
Wouter Verhelst authored
We merged the WRITE_ZEROES support from a branch, where it was written before STARTTLS was implemented, without properly adapting it to the way things are now done in the light of STARTTLS, resulting in the WRITE_ZEROES function sending its reply header in the clear, unconditionally. Fix by using the correct function instead.
-
Wouter Verhelst authored
-
Wouter Verhelst authored
-
Wouter Verhelst authored
-
- 19 Dec, 2016 2 commits
-
-
Wouter Verhelst authored
Tagging nbd 3.15
-
Wouter Verhelst authored
Signed-off-by:
Wouter Verhelst <w@uter.be>
-