librfc
is a C/C++ shared library containing public domain implementations
of core RFC data structures and algorithms written in C++11.
- No runtime dependencies other than the system's C++ standard library.
- No build prerequisites beyond the Autotools toolchain and a C++11 compiler.
- Compatible with Clang and GCC, or any standard C++11 implementation.
- Plays nice with others: all exported symbols are prefixed with
rfc
. - 100% free and unencumbered public domain software, usable in any context and for any purpose.
This table summarizes which RFC specifications are implemented at present:
Header | Spec | Description | Status |
---|---|---|---|
<rfc/http.h> | RFC 2616 | Hypertext Transfer Protocol HTTP/1.1 | WIP |
<rfc/json.h> | RFC 4627 | JavaScript Object Notation (JSON) | WIP |
<rfc/md5.h> | RFC 1321 | The MD5 Message-Digest Algorithm | WIP |
<rfc/sha1.h> | RFC 3174 | US Secure Hash Algorithm 1 (SHA1) | WIP |
<rfc/uri.h> | RFC 3986 | Uniform Resource Identifier (URI) | WIP |
<rfc/utf8.h> | RFC 3629 | UTF-8 | WIP |
<rfc/uuid.h> | RFC 4122 | Universally Unique Identifier (UUID) | WIP |
Note
Older releases may work, but are not actively tested for.
$ ./autogen.sh $ ./configure # on Linux $ ./configure --with-stdlib=libc++ # on FreeBSD / Mac OS X $ make $ sudo make install $ sudo ldconfig # on Linux
Find this project at: GitHub, Bitbucket, Ohloh, Freecode, SourceForge, Travis CI, Coverity Scan, Twitter, and Tumblr.
This project is part of the DRY initiative.
If you found this software useful and would like to encourage its maintenance and further development, please consider making a $5 donation to the author(s) via Gratipay or Bitcoin.
This is free and unencumbered public domain software. For more information,
see http://unlicense.org/ or the accompanying UNLICENSE
file.