-----BEGIN PGP SIGNED MESSAGE-----
PLibc does a few things.
Until yesterday, it provided a compliant printf/scanf implementation.
Well, now it doesn't (on my machine).
Also, it provides:
* ctime() and ctime_r() that work on W32
* Utility functions for converting W32 error codes to errno values
* flock() that works on W32 (never tested that one though)
* gmtime_r() that works on W32 (borrowed from GNU libc)
* hsearch() and hsearch_r()
* inet_ntop() and inet_pton() that work on any version of Windows (not
just Vista and later)
* kill() that works on W32 somewhat (only for process termination)
* partial nl_langinfo() implementation for W32
* lsearch() and lfind()
* mkstemp ()
* mmap () and munmap() that work on W32 somewhat (not very
POSIX-compliant though)
* some not-very-good pipe() and mkfifo() implementations
* string conversion (utf-8 to local and back) functions that do not
depend on libiconv (W32-only, obviously)
* rudimental symlink support (using shortcuts, ugh!) and realpath()
implementation based on that
* getaddrinfo(), getnameinfo() and freeaddrinfo(), apparently
independent of Windows version
* statfs() that works on W32 (with obvious limitations)
* a (presumably) fast strcasestr() implementation
* a strerror() implementation
* strndup() and strnlen() for W32 (well, for mingw.org; mingw-w64 has
strnlen for sure; not sure about strndup())
* strptime() from GNU libc
* tsearch()
* rudimental POSIX path support (knows how to expand ~, /tmp, /dev/null,
/etc, /com, /var and any /-starting path, infers root directory from dll
path or from a special registry value - i don't like it, but it's a
valid implementation)
And most importantly:
* utf-8 everywhere
* single integer fd space and select() that works with it (the integer
fd space is prone to conflicts though, and select() is suboptimal. IMO,
this is the weakest part of plibc)
Does any of that apply to libmicrohttpd?