I reviewed libmicrohttpd version 0.9.44+dfsg-1 as checked into xenial.
This shouldn't be considered a full security audit, but rather a quick
gauge of maintainability.

- [item elided]
- parse_uri() does not check error returns from asprintf()
- store_in_buffer() can leak 'dst' if realloc() fails
- SPDYF_start_daemon_va() calls spdyf_parse_options_va(), which treats all
  addresses as identical struct sockaddr types. However,
  SPDYF_start_daemon_va() includes code which checks the daemon->address
  as if it were a struct sockaddr_in6. I suggest using ASAN or valgrind
  with this with IPv6 addresses.

And some more subjective feedback:

- SPDYF_run() select(2) is a cranky interface, I'd pick something else
  first. select(2) can't handle file descriptors larger than 1024, which
  limits the utility of the server.
- Much of the code needs to be run through indent; the project ought to
  pick a coding style and enforce it. Mixing coding styles within one
  source file is exhausting to read.
- Commented out code is confusing. Consider deleting each piece of
  commented out code.

Lintian errors and warnings:
E: libmicrohttpd10: postinst-must-call-ldconfig 
usr/lib/x86_64-linux-gnu/libmicrohttpd.so.10.34.0
W: libmicrohttpd-dev: info-document-missing-image-file 
usr/share/info/libmicrohttpd.info.gz performance_data.png
E: libmicrospdy0: postinst-must-call-ldconfig 
usr/lib/x86_64-linux-gnu/libmicrospdy.so.0.0.0

The build logs are slightly noisy with ignored error returns from read(),
write(), asprintf() and dpkg-gencontrol warnings about -is and -ip
parameters.

Much of the code looks careful and professional. Some of the code looks
very immature and probably shouldn't have made it into a "library
release", even with a version number 0.9.something.

I think we should disable the SPDY libraries in our packaging: there's a
lot of work left before they're production-ready, and I would not expect
ABI or API stability from this library.

ACK from the security team for promoting libmicrohttpd to main with the
provision that the SPDY libraries are either no longer built or remain in
universe. We suggest removing them for the time being.

Please also address the lintian warnings and errors before release.

Thanks

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1488341

Title:
  MIR: libmicrohttpd

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/libmicrohttpd/+bug/1488341/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to