LibHTP is a security-aware parser for the HTTP protocol and the related bits
and pieces. The goals of the project, in the order of importance, are as
follows:
1. Completeness of coverage; LibHTP must be able to parse virtually all
traffic that is found in practice.
2. Permissive parsing; LibHTP must never fail to parse a stream that would
be parsed by some other web server.
3. Awareness of evasion techniques; LibHTP must be able to detect and
effectively deal with various evasion techniques, producing, where
practical, identical or practically identical results as the web
server processing the same traffic stream.
4. Performance; The performance must be adequate for the desired tasks.
Completeness and security are often detremental to performance. Our
idea of handling the conflicting requirements is to put the library
user in control, allowing him to choose the most desired library
characteristic.
This is Bruce Evans' C compiler and binutils package.
Either the compiler as the assembler are able to generate 16-bit code.
Hence it's possible to compile BIOS and DOS code under Unix.
The C compiler does understand K&R1 syntax, with a few restrictions
regarding bit fields. See the file work/bcc/bcc-cc1/bcc.bugs for
Bruce's bug list.
The binutils (assembler and loader) have been renamed to as86 and ld86
to not conflict with the system's assembler and loader, but they are
also available in the regular BINDIR (normally /usr/local/bin).
It's also possible to generate MC 6809 code with bcc/as. (This is a
compile-time option however, and not supported by the binary package
as it comes with FreeBSD.)
This is a meta-port for boost libraries, depends on all of them.
Boost provides free peer-reviewed portable C++ source libraries.
The emphasis is on libraries that work well with the C++ Standard
Library. Boost libraries are intended to be widely useful, and usable
across a broad spectrum of applications. The Boost license encourages
both commercial and non-commercial use.
The goal is to establish "existing practice" and provide reference
implementations so that Boost libraries are suitable for eventual
standardization. Ten Boost libraries are already included in the C++
Standards Committee's Library Technical Report (TR1) and will be in
the new C++0x Standard now being finalized. C++0x will also include
several more Boost libraries in addition to those from TR1. More Boost
libraries are proposed for TR2.
A graphical front-end to `cscope' and its clone `cs' with a number of
nice features, including:
- Graphical window interface for general ease of use.
- Function call hierarchy and function viewer.
- Recall of previous queries and query results for easy browsing.
- Ability to switch between databases and query back-ends.
- Source code highlighting ala Emacs.
- Querying and building may be performed simultaneously.
- Build database dialog allows interactively configuring source
and include directories.
- Saves queries and/or query results for later sessions.
- Query results and file browser separated by adjustable pane.
- Full text search in viewer windows.
- Convenient key and button bindings.
- Ability to invoke any editor directly from browser.
- Crude but existing help menu.
dot.conf is a simple configuration-file parser library written in C.
The configuration files created for dot.conf look very similar to
those used by the Apache Webserver. Even Container-Directives known
from httpd.conf can easily be used in the exact same manner as for
Apache-Modules. It supports various types of arguments, dynamically
loadable modules that create their own configuration options
on-the-fly, a here-documents feature to pass very long ARG_STR data
to your app, ${NAME:-default} style environment variable
substitution for arguments, and on-the-fly inclusion of additional
config files. Some behaviour can be toggled with flags at runtime.
To keep dotconf from printing out warnings, you can install your
own customized error handler.
Combined scanner/parser generator for LR compliant grammar definitions.
The generated C++ parser class is used as a super class from which a parser
implementation class must be derived. The implementation class implements the
scanner feed methods but also all required semantic action method. dragon has
been used for several large projects with complex grammar definitions (about
200 productions/ 80 tokens ). Since for those grammar defintions, the analyse
phase to build up the parse table is quite CPU intensive, it is recommended to
use state of the art hardware. dragon requires the base package to get compiled
but also for the compilation of the generated C++ code.
It can be used for databases/cego and probably other applications.
Many more details are available at:
ftnchek (short for Fortran checker) is designed to detect certain errors
in a Fortran 77 program that a compiler usually does not. ftnchek is not
primarily intended to detect syntax errors. Its purpose is to assist the
user in finding semantic errors. Semantic errors are legal in the Fortran
77 language but are wasteful or may cause incorrect operation. For example,
variables which are never used may indicate some omission in the program;
uninitialized variables contain garbage which may cause incorrect results
to be calculated; and variables which are not declared may not have the
intended type. ftnchek is intended to assist users in the debugging of
their Fortran 77 program. It is not intended to catch all syntax errors.
This is the function of the compiler. Prior to using ftnchek, the user
should verify that the program compiles correctly.
"Include what you use" means this: for every symbol (type, function,
variable, or macro) that you use in foo.cc (or foo.cpp), either foo.cc
or foo.h should include a .h file that exports the declaration of that
symbol. (Similarly, for foo_test.cc, either foo_test.cc or foo.h should
do the including.) Obviously symbols defined in foo.cc itself are
excluded from this requirement.
This puts us in a state where every file includes the headers it needs
to declare the symbols that it uses. When every file includes what it
uses, then it is possible to edit any file and remove unused headers,
without fear of accidentally breaking the upwards dependencies of
that file. It also becomes easy to automatically track and update
dependencies in the source code.
JWasm is a MASM v6 compatible assembler. It's a fork of Open Watcom's WASM
and released under the Sybase Open Watcom Public License, which allows
free commercial and non-commercial use. JWasm is written in C, source code
is open.
JWasm Features:
- JWasm natively supports output formats Intel OMF, MS Coff (32- and
64-bit), Elf (32- and 64-bit), Bin and DOS MZ.
- precompiled JWasm binaries are available for DOS, Windows and Linux. For
OS/2 and FreeBSD, makefiles are supplied.
- Instructions up to SSSE3 are supported.
- The JWasm source is portable and has successfully been tested with Open
Watcom, MS VC, GCC and more.
- As far as programming for Windows is concerned, JWasm can be used with
both Win32Inc and Masm32.
- C header files can be converted to include files for JWasm with h2incX.
Many JavaScript implementations do not warn against questionable coding
practices. Yes, that's nice for the site that "works best with Internet
Explorer" (designed with templates, scripted with snippets copied from
forums). But it's a nightmare when you actually want to write quality,
maintainable code.
That's where JavaScript Lint comes in. With JavaScript Lint, you can
check all your JavaScript source code for common mistakes without actually
running the script or opening the web page.
JavaScript Lint holds an advantage over competing lints because it is
based on the JavaScript engine for the Firefox browser. This provides
a robust framework that can not only check JavaScript syntax but also
examine the coding techniques used in the script and warn against
questionable practices.