Skip to content

Latest commit

 

History

History
36 lines (23 loc) · 1.4 KB

HACKING.md

File metadata and controls

36 lines (23 loc) · 1.4 KB

These are the agreements (technical and otherwise) on the development of Kzorp:

The coordination of development is done on http://huboard.com/balabit/kzorp/board using kanban. Everyone is welcome on board!

Every now code or bugfix should have the appropriate unit classes, and unit classes for legacy code should be created.

Kzorp is technically independent entity from Zorp, i.e. not part of Zorp repository.

Versioning uses major.minor.patchlevel scheme as defined by http://semver.org/

Copyright is GPL v2+.

The source code is meant to be autotools compatible, and readily useable after 'make install'. kzorp is meant to be packaged as the following (sets of) binary packages:

  • dkms module
  • set of iptables modules
  • python package, containing the python API and the kzorp binary

In git, the 'stable' branch is meant to contain the stable code.

Kzorp's interfaces:

  • netlink socket (existing, to be documented, for non-python applications)
  • python API (TBD, for python applications)
  • end-user interface provided by the kzorp tool
  • iptables interface

The python API contains the classes (e.g. Zone, Dispatcher, Service) representing the world known by kzorp. These classes have their methods to create the needed netlink messages. They can be subclassed by Zorp or anyone wishing to build on kzorp.

The config file format for kzorp will be something almost, but not quite, entirely unlike policy.py for Zorp.