Implementation of an html and javascript context scanner with no
lookahead. Its purpose is to scan an html document and provide context
information at any point within the input stream. An example of a user
of this scanner would be an auto escaping templating system, which would
require html context information at very specific points within the html
stream. The implementation is based on a simplified state machine of
HTML4.1 and javascript. The code also contains C++ and python bindings.
This is a loadable extension to Tcl providing commands for data
conversion, message digests, zlib based compression, error-correction,
channel-based manipulation of binary data. Trf extends the language at
the C-level with so-called ``transformer''-procedures. With the help of
some patches (*) to the core the package is able to intercept all
read/write operations on designated channels, thus giving it the ability
to transform the buffer contents as desired. This allows things like
transparent encryption, compression, charset recoding, etc. Build upon
this framework (and as proof of concept) a collection of tcl-level
commands was implemented.
ucpp is a C preprocessor and lexer. It has the following goals:
- Strict conformance to the C99 standard (with switches to
disable some extensions and mimic C90 behaviour)
- Low memory consumption
- Possibility to use the code as a lexer (that outputs tokens
directly)
yaml-cpp is a YAML parser and emitter in C++ matching the YAML 1.2 spec.
adsuck is a DNS relay that returns NXdomain for hosts that match names in a
blacklist for quick and non browser plugin based ad blocking.
Autotrust is a command line tool to automatically update your DNSSEC
trust anchors. It is intended to run from a cron job and can run
next to any validating resolver. It makes use of ldns and libunbound.
GNU Libidn is an implementation of the Stringprep, Punycode,
and IDNA specifications defined by the IETF Internationalized
Domain Names (IDN) working group. It is used to prepare
internationalized strings (such as domain name labels,
usernames, and passwords) in order to increase the likelihood
that string input and string comparison work in ways that make
sense for typical users throughout the world. The library
contains a generic Stringprep implementation that does Unicode
3.2 NFKC normalization, mapping and prohibition of characters,
and bidirectional character handling. Profiles for iSCSI,
Kerberos 5, Nameprep, SASL, and XMPP are included. Punycode and
ASCII Compatible Encoding (ACE) via IDNA are supported.
libasyncns is a C library for Linux/Unix for executing name service queries
asynchronously. It is an asynchronous wrapper around getaddrinfo(3),
getnameinfo(3), res_query(3) and res_search(3) from libc and libresolv.
In contrast to GNU's asynchronous name resolving API getaddrinfo_a(),
libasyncns does not make use of UNIX signals for reporting completion of name
queries. Instead, the API exports a standard UNIX file descriptor which may be
integerated cleanly into custom main loops.
In contrast to asynchronous DNS resolving libraries like libdenise, skadns,
adns, libasyncns is just an asynchronous wrapper around the libc's synchronous
getaddrinfo() API, which has the advantage of allowing name resolution using
techniques like Multicast DNS, LDAP or NIS using standard libc NSS (Name
Service Switch) modules. libasyncns is compatible with IPv6 if the underlying
libc is.
libasyncns is very tiny, consisting of just one header and one source file. It
has no dependencies besides libc.
Bindgraph makes pretty query statistics about BIND servers. It was derived
from well-known mailgraph package.
Credns is a software program aimed at fortifying DNSSEC by performing
validation in the DNS notify/transfer-chain.