GNU Portable Threads (Pth) is a very portable POSIX/ANSI-C based library for Unix platforms providing non-preemptive priority-based scheduling for multiple threads of execution ("multithreading") inside server applications. All threads run in the same address space, but each thread has its own individual program-counter, run-time stack, signal mask and errno variable. The scheduling is done in a cooperative way, i.e. the threads are dispatched based on priority and pending events. The event facility allows threads to wait until various types of events occur, including pending I/O on filedescriptors, elapsed timers, pending I/O on message ports, thread and process termination, and even customized callback functions.
GNU shtool is a compilation of small but very stable and portable shell scripts into a single shell tool. All ingredients were in successful use over many years in various free software projects. The compiled shtool program is intended to be used inside the source tree of free software packages. There it can overtake various (usually non-portable) tasks related to the building and installation of an free software package.
mod_ssl provides provides strong cryptography for the Apache 1.3 webserver via the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1). It is based on the SSL/TLS toolkit OpenSSL and supports all SSL/TLS related functionality, including RSA and DSA/DH cipher support, X.509 CRL checking, etc. Additionally it provides special Apache related facilities like DBM and shared memory based inter-process SSL session caching. per-URL SSL session renegotiations, DSO support, etc.
OpenPKG is a flexible and powerful software packaging facility that eases installation and administration of Unix software across several platforms. Consolidating different vendor approaches into a unified architecture, it assists in administration of large networks previously complicated by nonconformant systems. It uses RPM to provide an additional system layer on top of the operating system. It is fully self-contained (no RPM pre-installation is required), installs itself by means of a tricky bootstrapping procedure with minimal operating system intrusion, and supports multiple installation instances.
OSSP al defines an abstract data type of a data buffer that can assemble, move, and truncate chunks of data in a stream but avoids actual copying. It was built to deal efficiently with communication streams between software modules. It especially provides flexible semantical data attribution through by-chunk labeling. It also has convenient chunk traversal methods and optional OSSP ex based exception handling.
OSSP cfg is a ISO-C library for parsing arbitrary C/C++-style configuration files. A configuration is sequence of directives, each directive consists of zero or more tokens, and each token can be either a string or again a complete sequence. This means the configuration syntax has a recursive structure and allows you to create configurations with arbitrarily-nested sections. The configuration syntax also provides complex single/double/balanced quoting of tokens, hexadecimal/octal/decimal character encodings, character escaping, C/C++ and shell-style comments, etc. The library API allows importing of a configuration text into an Abstract Syntax Tree (AST), traversing the AST, and optionally exporting the AST again as a configuration text.
OSSP ex is a small ISO-C++ style exception handling library for use in the ISO-C language. It allows you to use the paradigm of throwing and catching exceptions in order to reduce the amount of error handling code without making your program less robust. This is achieved by directly transferring exceptional return codes (and the program control flow) from the location where the exception is raised (throw point) to the location where it is handled (catch point), usually from a deeply nested sub-routine to a parent routine. All intermediate routines no longer have to make sure that the exceptional return codes from sub-routines are correctly passed back to the parent.
OSSP flow2rrd is a companion tool to the Flow-Tools toolkit for storing NetFlow network traffic data in an accumulating fixed-size RRDTool round-robin database (RRD) for visualization purposes. It reads captured flow data and stores it into a backend RRD according to pre-configured hosts, targets, and services. It then can generate host/target and target/service graphs.
OSSP fsl offers the syslog API otherwise provided by libc. Instead of writing to the syslogd process, it uses the powerful OSSP l2 logging capabilities. It is a drop-in link-time replacement which enables any syslog consumer to take advantage of OSSP l2 by just linking this library in before libc. The program is intended to apply OSSP l2 functionality to existing syslog-based third-party programs without the requirement to change the source code of the program.