System Programs

To facilitate navigating in this list, projects are categorized by their purpose, authorship, and current state. Each project entry lists the categories it pertains to. Clicking on a category name will bring a listing of all projects in that category.

Additionally, a list of related projects is provided where applicable. Each element in that list is a link to the corresponding project entry.

Clicking on a project's name will bring this project's entry as a separate page (a permalink).

Hovering your mouse over the version information of a project shows the list of changes introduced by that version.

Sort controls below allow you to order the list either lexicographically or by the most recent release date, in both directions.

Using the Search control, you can select projects by name. Shell-style globbing patterns (wildcards) are accepted.

(Return to the project listing)

Apache::Config::Preproc

Version: 1.07  —  2021-02-12
* Change bugtracker address.

	  
Category:
Description:

This Perl module reads and parses Apache configuration file, expanding constructs like Include, IncludeOptional, IfModule, IfDefine, Use, etc.

Related projects:

Apache::Defaults

Version: 1.03  —  2021-02-12
	- Change bugtracker address.
	  
Category:
Description:

This Perl module provides a mechanism for detecting version, default settings, and the preloaded modules of the Apache httpd server. It does so by locating the server binary, invoking it with appropriate options and analyzing the output it produces.

NetSNMP::Sendmail

Version: 0.96  —  2021-02-13
* Change bugtracker address.

	  
Category:
Description:

A perl plugin for NetSNMP that provides access to Sendmail statistics information obtained by mailq and mailstats.

acmeman

Version: 3.08  —  2021-06-11
	- Allow for multiple per-domain postrenew statements.

	  
Category:
Description:

A tool for automatic creation and renewal of ACME (LetsEncrypt) SSL certificates. The list of domains to handle can be obtained from acmeman or apache configuration files, or from both. If the default acmeman configuration file doesn’t exist, the program scans apache configuration files for a list of domains.

anubis

Version: 4.2  —  2014-05-23
** New operation mode: proxy

** Command line option precedence

Command line options take precedence over configuration file
statements.

** elif statement

A familiar `elif' statement is supported, e.g.:

if condition-1
  action-list-1
elif condition-2
  action-list-2
elif condition-3
  action-list-3
else
  action-list-4
fi
  
** New CONTROL statement esmtp-auth-delayed.

When set to `yes', this statement instructs Anubis to postpone ESMTP
authentication until MAIL command is issued by the client.  This
allows to change authentication credentials in the SMTP section (see
below).

** SMTP section

The new section "SMTP" is invoked each time an SMTP command
is received. This section may alter the command's argument, using the
"modify command", e.g.:

BEGIN SMTP
regex :extended
modify command [ehlo] "foo.bar.net"
if command ["mail from:"] "<(.*)>(.*)"
  modify command ["mail from:"] "<root@bar.net>\2"
fi
END

It is also allowed to use esmtp-* keywords in this section, provided
that `esmtp-auth-delayed yes' is set in the CONTROL section. Changes
in the ESMTP authentication credentials take effect if they occur
either before receiving MAIL command from the client, or when handling
this command, e.g.:

BEGIN SMTP
if command ["mail from:"] "<smith(\+.*)?@@example.net>"
  esmtp-auth-id smith
  esmtp-password guessme
else
  esmtp-auth no
fi
END

** New keywords: log-facility and log-tag

** Guile output

By default Scheme's standard error and output ports are redirected to
syslog, using priorities `err' and `warning' correspondingly.

** MySQL options file

When using MySQL for Anubis user database, the database parameters and
access credentials are read from the file /etc/my.cnf, section
"anubis".  Additionally, two URL parameters are provided:
"options-file", which sets the name of the options file, and
"options-group", which sets the name of the group.

	  
Category:
Description:

An SMTP message submission daemon. It represents an intermediate layer between mail user agent (MUA) and mail transport agent (MTA), receiving messages from the MUA, applying to them a set of predefined changes and finally inserting modified messages into an MTA routing network. The set of changes applied to a message is configurable on a system-wide and per-user basis.

Related projects:

beam

Version: 1.5.90  —  Git
* New configuration keyword <item>_alldb

This keyword is valid for backup items of mysql type.  If dumping all
databases is requested (i.e. the <item>_database variable is not
defined), it configures whether to dump each database into a separate
file (named after it), or to dump all databases to a singe file.

* Fix restoring from remote archives
	  
Category:
Description:

A suite of backup programs written in a reasonably portable shell language with the purpose of making backup process as easy as possible. The name is an acronym for “Backup Easy And Manageable”.

certmon

Version: 1.0  —  2019-10-10
Initial release.
	  
Category:
Description:

A tool for monitoring the expiration times of remote SSL certificates via HTTPS. Can be used either as a Nagios plugin or as a standalone tool.

cfpeek

Version: 1.2  —  2021-01-07
* New command line option --done (-d)

This option is a counterpart of --init and supplies a cleanup
expression, i.e. an expression that will be evaluated when the
main loop has iterated over all nodes in the tree.

* New parser: DHCPD

A parser for dhcpd.conf file.

* Drop support for Guile versions prior to 2.2.0

	  
Category:
Description:

Parses a structured configuration file and retrieves values specified by keyword pathnames or globbing patterns.

Related projects:

cpio

Version: 2.13  —  2019-11-06
* Fix CVE-2015-1197
* Fix CVE-2016-2037
* Fix CVE-2019-14866
	  
Category:
Description:

GNU cpio copies files into or out of a cpio or tar archive. The archive can be another file on the disk, a magnetic tape, or a pipe. GNU cpio supports a wide variety of archive formats.

Related projects:

dico

Version: 2.11  —  2021-04-27
* Bugfixes in the gcide module

* Fix searches in the gcider utility

* Support for Python 2 has been withdrawn

	  
Category:
Description:

GNU Dico provides a flexible modular implementation of dictionary server, a number of modules for it, and a console based dictionary lookup utility. A Web interface is also available.

Related projects:

direvent

Version: 5.3  —  2021-12-30
* Introduce compound events

The "change" event is implemented on GNU/Linux and FreeBSD.  This
event is delivered when a file was modified and closed.

* New configuration statement for manipulating the environment.

The "environ" statement is now a compound statement. It can contain
five kinds of substatements: "clear" to clear the environment, "keep"
to retain certain variables while clearing the environment, "set" to
set a variable, "unset" to unset a variable or variables, and "eval"
to evaluate a variable reference for side effects.

Both "keep" and "unset" can take globbing pattern as their argument,
in which case they affect all variables matching that pattern. 

The value part in the "set" statement is subject to variable
expansion.

The "environ" block can appear in global context as well.  In this
case it applies to all watchers.

The support for the old one-line "environ" syntax is retained for
backward compatibility.

* Variable expansion in arguments to some configuration statements.

Both macro and environment variables are expanded in arguments to all
substatements of the new "environ" block statement and in the argument
to the "command" statement.  In the latter case, expansion of the
environment variables is controlled by the "shell" option.  If the
option is set, the variable will be expanded by the shell.  Otherwise,
they are expanded by direvent prior to invoking the command.

* Rewrite the recursive watching support

In particular, this fixes the bug where recursive watchers silently
assumed that the "create" generic event was configured for the
watcher.

* Change interface for bulk closing of file descriptors

To speed up launching of the user commands, system-dependent
interfaces for closing the file descriptors above the given one are
used, if available.
	  
Category:
Description:

GNU Direvent monitors a set of directories on the file system and reacts when their content changes. When a change is detected, the program invokes an external command configured for that kind of change.

Related projects:

dnstools

(Not released)
Category:
Description:

A set of tools for DNS management.

Related projects:

eclat

Version: 2.1  —  2022-03-03
* Implement the terminate-instances command.
* Implement MoveAddressToVpc (addr2vpc) and RestoreAddressToClassic (addr2ec2).
* Fix rmaddr -v.
* Document chvol and lschvol commands.
* Implement ModifyVolume and DescribeVolumesModifications.

	  
Category:
Description:

Eclat stands for EC2 Command Line Administrator Tool. It allows you to manage Amazon EC2 services from the command line, fast and easy. Eclat does not require any resource-consuming libraries. It is written in plain C, depends only on libraries which are always installed on any decent system, and has a tiny memory footprint.

Related projects:

fileserv

Version: 0.4  —  2019-07-25
* Bugfixes and organizational changes

	  
Category:
Description:

Simple HTTP server for static files.

Related projects:

genrc

Version: 1.3  —  2021-07-08
* Fix the --timeout option

	  
Category:
Description:

Generic helper program for writing system initialization scripts. Depending on the operation mode, it starts, stops, reconfigures or displays the status of a specific program. Primary audience is Slackware system administrators. However, the tool is generic enough to be used on any other Linux (and not only) distribution. In the contrast to another similar programs (e.g. start-stop-daemon), it is designed so that the entire rc file can consist of only one line, invoking (or exec’ing) genrc with the right set of arguments.

Related projects:

glacier

Version: 2.13  —  2021-03-22
* Use explicit DESTROY with AUTOLOADs

	  
Category:
Description:

Command line tool for managing AWS Glacier

Related projects:

grot

Version: 1.0  —  2009-05-16
Initial release.

	  
Category:
Description:

Grot rotates MySQL binary log files on replication master server. It works by first determining what slaves are connected to the server. Then it connects to each slave and determines what master log file it currently uses. Finally, it removes those logs on master that are older than the oldest of logs used by slaves.

gsc

(Not released)
Category:
Description:

This project is decommissioned. It’s repository is retained as a historic reference only.

hostproc

Version: 0.3  —  2022-10-28
Fix deadlock.
	  
Category:
Description:

Hostproc provides detailed information about processes running on a host over SNMP. The information is grouped in a way similar to the ps(1) output. Additional aggregating features allow the administrator to provide summary statistics for processes matching some criteria and to exclude such processes from the detailed output. The latter feature can be used, in particular, to separate statistics for processes running on the host from those that are run within docker containers. The program is built as a sub-agent for Net-SNMP snmpd and is Linux-specific.

inetutils

Version: 1.9.3  —  May 12, 2015
* ftp

An old inability to allow other names than the canonical name has
been corrected.  This means that a machine entry in the .netrc file
will now be used as expected.  Previously any alias name was replaced
by the corresponding canonical name, before reading the .netrc file.

The internal command `hash' accepts a suffixed letter to the size
argument, like `12k', instead of 12288.  Made a minor change to the
syntax of the command itself, allowing size changes independently
of activation of hash markings.  After a transfer the summary gives
the speed as `Mbytes/s', `kbytes/s', or `bytes/s'.

The .netrc file can be overridden by the environment variable NETRC.
Of even higher precedence is the new option `-N/--netrc'.  The access
to the resulting file, whatever method, is now denied unless it is a
regular file.

* ifconfig

Better command line parsing on BSD and Solaris systems.  Touch only
changeable flags on all systems.

* logger

The ability to use numerical facilities is restored to full range.

* ping, ping6

The ability to specify a pattern as payload is corrected.

* syslogd

A new switch `-T/--local-time' makes the service ignore a time
stamp passed on by the remote host, recording instead the local
time at the moment the message was received.  As a short form of
`--pidfile', the switch `-P' is new.

In common with other syslogd implementations, rsyslogd and sysklogd,
there has for a long time existed an attack vector based on large
facility numbers, made public in CVE-2014-3684.  This is now mended
in our code base.

* telnetd

The ability to autologin a client, without using authentication,
is now functional in the expected manner, i.e., the prompt for a
user name is suppressed in favour of an immediate password prompt.

In a setting where the client is using a UTF-8 encoding, it was
common to observe strange characters in most responses.  This was
caused by the server daemon, due to incomplete purging of internal
protocol data.  The issue should now be resolved.

* whois

Improved cooperation with servers like `whois.arin.net', `whois.eu',
and `whois.ripe.net'.
	  
Category:
Description:

Inetutils, or GNU Internet Utilities, are the basic internet utilities of the GNU Operating System.

ipacct

(Not released)
Category:
Description:

Decomissioned.

jumper

Version: 1.2  —  2018-10-26
* Implement heartbeat event

* Add auxiliary program: ifactive

* Fix file descriptor leak

	  
Category:
Description:

Jumper monitors network interfaces for certain kinds of traffic and starts preconfigured external programs when such traffic is detected. It is designed mainly to bring up network links (such as VPN and the like) on demand.

Related projects:

kbdlock

Version: 2.0  —  2012-06-30
* The program is installed in /usr/bin

Prior versions went to /usr/sbin, you will need to remove them
manually.

* Print /etc/issue before the prompt
* Sleep after incorrect password is input
* New options: -i (--issue), -s (--sleep), -c (--clear)
* Add a manpage
* Improve error checking and reporting
	  
Category:
Description:

A simple console locker program for GNU/Linux systems.

mailfromd

Version: 8.14  —  2022-08-13
* Initialization of implicitly declared automatic variables

Implicitly declared automatic variables are initialized to null
values, just like global ones.  This means, in particular that
the following code is now valid:

  func foo()
  do
    if bar()
       set a "ok"
    fi
    echo a
  done

Depending on the return value of bar(), this function will print
either "ok" or an empty string.  In previous versions, it would
produce unspecified results.

* Buffered I/O

The I/O operations can be buffered.  Use of fully buffered streams
can dramatically improve performance, especially for `getline' and
`getdelim' calls.

The global variables `io_buffering' and `io_buffer_size' define
buffering mode and associated buffer size for file descriptors
returned by the subsequent calls to `open' or `spawn'.  Buffering mode
of an already open file descriptor can be changed using the `setbuf'
function.

The `io_buffering' variable defines the buffering mode.  By
default it is 0 (BUFFER_NONE), which disables buffering for
backward compatibility with the previous versions.  Another
possible values are: 1 (BUFFER_FULL) and 2 (BUFFER_LINE)

When set to BUFFER_FULL, all I/O operations become fully buffered.
The buffer size is defined by the `io_buffer_size' global variable.

BUFFER_LINE is similar to BUFFER_FILE when used for input.  When used
for the output, the data are accumulated in buffer
and actually sent to the underlying transport stream when the newline
character is seen.  The `io_buffer_size' global variable sets the
initial value for the buffer size in this mode.  The actual size can
grow as needed during the I/O.

The default value for `io_buffer_size' is the size of the system page.

The symbolic constants BUFFER_NONE, BUFFER_FULL and BUFFER_LINE are
defined in the 'status.mf' module.  E.g.:

  require status

  begin
  do
    io_buffering = BUFFER_FULL
  done

Use the `setbuf' function to change the buffering mode and/or buffer
size for an already opened stream, e.g.:

  setbuf(fd, BUFFER_FULL, 4096)

* Changes in read and write functions

The 'read' function tries to read as much data (up to the requested
amount) as possible.  It will return success if it succeeded to read
less bytes than requested (in previous versions it would incorrectly
signal the e_io exception in this case).  Use the length() function
to determine actual number of bytes read.  The 'read' functions signals
e_eof if it read 0 bytes and e_io if an error occurred.

The 'write' function tries to write as much data (up to the requested
amount) as possible.  It will signal e_io in case of error and e_eof
if 0 bytes were written.

* dkim_sign and Sendmail

Sendmail silently modifies certain headers before sending the
message in the SMTP transaction.  It has been reported that on certain
occasions this invalidates DKIM signatures created by dkim_sign().
To prevent this from happening, dkim_sign() now mimics the Sendmail
behavior and reformats those headers before signing the message.  The
headers affected are: Apparently-To, Bcc, Cc,
Disposition-Notification-To, Errors-To, From, Reply-To, Resent-Bcc,
Resent-Cc, Resent-From, Resent-Reply-To, Resent-Sender, Resent-To,
Sender, To.

This behavior is controlled by the global variable
dkim_sendmail_commaize.  Set it to 0 to disable it.

* Support for rsa-sha1 in DKIM

Both dkim_sign and dkim_verify support rsa-sha1 for compatibility with
older software.  Upon return from dkim_verify the name of the algorithm
used to sign the message is stored in the global variable
dkim_signing_algorithm.  The dkim_sign function takes additional
optional argument that specifies the algorithm to use.  Its
declaration is now:

  void dkim_sign(string d, string s, string keyfile
                 [, string ch, string cb, string headers, string algo ])

* New DKIM explanation code: DKIM_EXPL_BAD_KEY_TYPE

This code is reported by `dkim_verify' if the `k=' tag of the public
DKIM key contains a value other than "rsa".

* Support for CNAME chains

CNAME chains are formed by DNS CNAME records pointing to another
CNAME.  Using CNAME chains in DNS is not considered a good practice and
prior versions of mailfromd would refuse to resolve a CNAME pointing to
CNAME.  However, this interacted badly with certain DNS servers that
publish otherwise valid RRs pointed to by 2 or 3 element CNAME chains.
To cope with such server, mailfromd now allows for CNAME chains of
length 2 by default.  This can further be configured using the
"max-cname-chain" statement in the "resolver" section of mailfromd
configuration file (see below).

* The "resolver" configuration statement

This new configuration statement configures certain aspects of the
internal DNS resolver.  The syntax is as follows:

  resolver {
    config FILENAME;
    max-cname-chain NUM;
  }

The "config" statements defines the name of the resolver configuration
file to use instead of the default /etc/resolv.conf.

The "max-cname-chain" statement defines the maximum length of a CNAME
chain that will be followed.  The default is 2.

* Bugfixes

** Fixed sorting in dns_query()

** Fixed a bug in message I/O functions

If compiled with mailutils versions newer than 3.13, this bug would
provoke infinite recursion in message_to_stream or its derived
functions.

** Fixed a bug in dkim_sign routine

The bug would cause coredumps on 32-bit architecture.

** Avoid dereferencing undefined optional arguments in built-ins

** Fixed return value of hasmx function

** Fixed header handling in send_text, create_dsn and send_dsn built-ins

** Fixed compilation with flex >= 2.6.1

** Remove unused configuration variables
	  
Category:
Description:

Mailfromd is a general-purpose mail filtering daemon for Sendmail, Postfix and MeTA1. It is able to filter both incoming and outgoing messages using criteria of arbitrary complexity, supplied by the administrator in the form of a script file. The daemon interfaces with the MTA using Milter or PMilter protocols.

mailutils

Version: 3.15  —  2022-04-17
* mbox format: don't count terminating empty line as part of the message

* Improve performance of the Sieve fileinto action

* Improve efficiency of operations on flat mailboxes in append mode

* Bugfixes in quoted-printable and fromrd filters

* Variois fixes in mbox and dotmail format libraries

* Fix compilation with flex version 2.6.1
	  
Category:
Description:

GNU Mailutils is a swiss army knife of electronic mail handling. It contains a rich set of mail-related utilities and daemons, including pop3d, imap4d, sieve and several domain-specific mail delivery agents.

Related projects:

mangemanche

(Not released)
Category:
Description:

A modular remote management system for Ping903. Allows the user to inspect configuration of the running server, add or remove IP addresses, synchronize the monitored IP list with the Nagios configuration or an SQL database etc.

Related projects:

micron

Version: 1.3  —  2021-10-29
* Appending cronjob output to a file

Output of a cronjob can be captured and appended to a disk file,
instead of sending it via email or logging it using syslog.  This is
controlled by the _MICRON_OUTFILE (global) and _JOB_OUTFILE (per-job)
built-in variables.

* New option -P FILE

Writes PID of the running process to FILE.  The file will be removed
when the program terminates.

* Option -v replaces -o

To set initial value of a built-in variable, use the "-v NAME=VALUE"
option.

* The -V option

To obtain the micrond version, use the -V option.

* Bugfixes

** Fix allocation of environment and built-in variables defined in crontabs.
	  
Category:
Description:

An enhanced implementation of UNIX cron daemon.

mysqlstat

Version: 1,1  —  2020-01-23
* Minor fixes in mysqlstat-setup
* Provide default values for NULL columns
	  
Category:
Description:

NetSNMP module that provides access to process list statistics and replication status of the mysqld server.

nssync

Version: 1.1  —  2012-03-27
First actual release.

	  
Category:
Description:

The nssync utility converts DNS records kept in SQL tables of arbitrary format to BIND zone files.

Related projects:

pam-modules

Version: 2.5  —  2022-05-09
* pam_fshadow: skip-password option

Based on the proposal of Mirsad Goran Todorovac, the new option
skip-password instructs pam_fshadow to check whether the user
being authenticated is present in the passwd and/or shadow files,
without verifying his password.  This way pam_fshadow can be used as
an auxiliary module in the stack, actual authentication being
performed by one of the modules before it.
	  
Category:
Description:

A collection of useful PAM modules plus a command line utility for checking PAM authentication and other management groups.

pies

Version: 1.8  —  2022-08-13
* New configuration keywords

** sigterm SIG

Available for use in "component" sections.  This statement defines
signal which pies should send to the running component instance in
order to terminate it.  Defaults to SIGTERM.

* Fix the component shutdown sequence

The shutdown sequence is determined taking into account dependencies
between components, so that all dependent components are stopped
before their prerequisite components.

* Fallback log file

Fallback log file is a place where pies writes out of band log messages,
i.e. messages about not being able to open syslog socket or send logs
to it.  Regular log messages are diverted to this file if syslog was
requested, but cannot be used because of a permanent error.

* Bugfixes

** Fix piesctl config reload

** Fix configuration preprocessing.

** Varios fixes in REST API server.
	  
Category:
Description:

GNU pies (pronounced p-yes) is a program invocation and execution supervisor. This utility allows to execute usual foreground-mode applications in detached mode, as if they were daemons. It combines the fucntionality of init and inetd programs. It can be used to control complex multi-component software.

Related projects:

ping903

Version: 0.8  —  2020-03-19
* Use red-black trees to index the IP list.

	  
Category:
Description:

Ping903 is designed to periodically monitor a very large number of remote hosts using ICMP ECHO packets. The package is built using the client-server architecture. The main component (ping903) is a daemon that sits in memory and wakes up periodically to send certain number of ICMP echo packets to a preconfigured number of hosts and to collect replies. The resulting round-trip statistics is made available via REST API.

Related projects:

radius

Version: 1.6  —  2008-12-06
* Configuration file raddb/config

The syslog statement takes an optional 4th argument specifying syslog
tag to use, e.g.:

    channel default {
	    syslog local1.info radiusd;
    };

* New attributes

** GNU-Server-Address

Holds IP address of the RADIUS server that recieved the
request. Notice, that the value of this attribute is "0.0.0.0" if
there are no `listen' statement in your `raddb/config'.
    
** GNU-Server-Port

Holds UDP port number of the RADIUS server that recieved the request.

* Automake function AM_GNU_RADIUS is provided, for checking if
GNU Radius is installed from configure.ac scripts.

* Guile support requires Guile version 1.8 or later.

* Bugfixes
** Pass NAS-IP-Address to mlc_stop_query	
	
	  
Category:
Description:

GNU Radius is an extensible and scalable authentication and accounting server.

rex

Version: 4.1  —  2022-03-17
* Hostgroup stack

Rex now maintains a stack of hostgroups.  Once you push a hostgroup
name on stack, that hostgroup will be used by any subsequent rex
command, unless it is given the -g option.  The new command "group"
(see below) provides ways to pop items off the stack, swap arbitrary
element with the top of stack, select new hostgroups on the fly, etc.

* New command: rex group

The "rex group" command has the following forms:

  rex group push GROUP
    Push GROUP on stack.

  rex group pop
    Pop the topmost group off the stack.

  rex group swap N
    Exchange top of the stack with the Nth element (0-based).

  rex group drop N
    Remove Nth element from the stack.

  rex group select COMMAND ARGS...
    Create on top of the stack a temporary group that contains
    those hosts from the current hostgroup where the supplied
    shell command returns success, i.e. exits with code 0.

  rex group show
    List the contents of the hostgroup stack.

* Add configuration function for overriding PTR records from rc files
	  
Category:
Description:

Rex is a remote execution utility that runs a supplied command on a set of remote hosts. Arbitrary data can be supplied to the command in the form of local files, which will be transferred to each remote host prior to running the command and removed afterwards. Both parallel and sequential execution is supported.

Special mode exists to distribute a file or files to several hosts.

Rex is written in TCL and has extensive scripting facilities. It provides a convenient way to administrate multiple servers.

The program is designed to operate in a minimalistic environment. It is self-contained and does not need any external libraries.

rpipe

Version: 1.8  —  2021-05-17
* Syslog support

New option '-S FACILITY' switches diagnostic output to the given
syslog facility.

	  
Category:
Description:

A simple tool for forwarding content of a local file to the stdin of a program running on a remote host via TCP. The tool was created when I needed to run GNU Mailman in a docker container without MTA in it. It implements a slightly modified version of TCPMUX protocol. The same binary (rpipe) serves both as a server (on the remote end) and as a client (on the local end).

Related projects:

rush

Version: 2.3  —  2022-07-16
* Fix invalid memory addressing in remopt command

* Fix building with flex >= 2.6.1 (EOF check)
	  
Category:
Description:

GNU Rush is a Restricted User Shell. It is intended for use with ssh, rsh and similar remote access programs. Using a sophisticated configuration file, Rush gives you complete control over the command lines users can execute, system resources they can use, etc. In particular, it allows to run remote programs in a chrooted environment.

Related projects:

slackbuilder

(Not released)
Category:
Description:

A builder for Slackware packages.

Related projects:

slackupgrade

Version: 2.3  —  2022-04-30
* Support for Slackware 15.0
	  
Category:
Description:

Upgrades the Slackware installation to a new release. Two upgrade types are supported. In normal upgrade only packages already installed on the system are upgraded. In full upgrade, all packages from the new release are installed. A combination of the two can be achieved by supplying a list of additional Slackware series when running the normal upgrade.

slb

Version: 1.1  —  2012-03-30
* Support SNMPv3
* Default SNMP version is 2c
* Use newer Grecs
* Drop unneeded dependencies
* Variable assignments in expressions
* Detection of SNMP counter overflows
* Comma operator
* Support for indexed MIBs

This feature allows you to use symbolic names instead of the fixed MIBs
for MIBs that are part of SNMP subtrees.  For example, to get number of
packets sent over eth0 into variable "out", you would do the following:

    table iftable IF-MIB::ifDescr;
    variable out "IF-MIB::ifOutUcastPkts.$iftable[eth1]";

The first statement converts the subtree into a "table" named "iftable".
The second statement references an entry in this table that has
the value "eth1".  For example, if the SNMP tree has the following MIB

    IF-MIB::ifDescr.10: eth0

then the expression "$iftable[eth]" yields "10"

* Assertion syntax changed.

The assertion statement takes a single argument, which must be a
string consisting of the following three parts:

   <oid: string> [!]<opcode>[/i] <value: string>

The <opcode> part can be either an arithmetical operator (=, <, <=, >,
>=), or any of the following string operators:

    eq          string equality
    ne          string inequality
    prefix      oid value must begin with <value>
    suffix      oid value must end with <value>
    glob        <value> is a glob(7) pattern that oid value must match
    
Each of these can be suffixed with "/i" to request case-insensitive comparison.

A "!" in front of opcode reverts its meaning.   

The <value> part must not include the type prefix.

	  
Category:
Description:

A simple load balancer. The utility monitors a set of remote servers, obtaining a set of numeric values via SNMP. These values are used to compute a single floating-point number, called a relative load for that server. The servers are then sorted in order of increasing loads and the resulting table is output (using a configurable format string) to a file or pipe.

Related projects:

slogin

(Not released)
Category:
Description:

A replacement for /bin/login, intended to be used in system start-up script wherever the root maintenance is needed. It does not update utmp/wtmp and hence is safe to be called when the partition containig these files is not mounted.

smap

Version: 2.1  —  2021-07-01
* Support for Guile 2.2

* Bugfixes

* Improved testsuite

	  
Category:
Description:

An extendable socket map server with a set of modules and framework for writing new socket maps and testing them.

Related projects:

swu

Version: 1.0  —  2019-07-31
Initial release.

	  
Category:
Description:

Displays the amount of swap space used by each running program. The utility is Linux-specific.

syslogrelay

Version: 2.1  —  2022-05-30
* Bugfix: restore implicit port number for UDP.
	  
Category:
Description:

This program provides system log forwarding facility for confined environments, such as docker containers. It listens for incoming system log messages on the UNIX socket file /dev/log and forwards them to the specified remote server. Relayed messages are normalized to make sure they comply with the RFC 3164. In particular, hostname is added if necessary. This is important in docker environments, since otherwise the collector would insert the IP address of the container or gateway in place of the missing hostname, and neither IP is informative enough to identify the container where the message originated.

tagr

(Not released)
Category:
Description:

Decomissioned.

tallyman

Version: 1.4  —  2021-11-22
* tallyman: if passed empty service ID, don't attempt to contact the collector

	  
Category:
Description:

Monitors state of running docker containers via SNMP. The package provides two utilities:

  • tallyman

    A health state collector to be run inside the container.

  • stevedore

    A container state collector and SNMP agent daemon.

Each container is supposed to run the tallyman command as part of its HEALTHCHECK configuration. This tool takes as its argument the command line that does the actual checking, collects its return and sends it over to the stevedore daemon that acts as a collector and simultaneously as a SNMP subagent, delivering the collected information to the snmpd daemon.

Related projects:

tar

Version: 1.34  —  2021-02-13
* Fix extraction over pipe (savannah bug #60002)

* Fix memory leak in read_header (savannah bug #59897)

* Fix extraction when . and .. are unreadable

See https://lists.gnu.org/archive/html/bug-tar/2021-01/msg00012.html

* Gracefully handle duplicate symlinks when extracting

See https://lists.gnu.org/archive/html/bug-tar/2021-01/msg00026.html

* Re-initialize supplementary groups when switching to user privileges
	  
Category:
Description:

GNU tar is an archiver program. It is used to create and manipulate files that are actually collections of many other files; the program provides users with an organized and systematic method of controlling a large amount of data.

Related projects:

varnish-mib

Version: 4.0  —  2019-02-14
Rewrite as a stand-alone snmpd agent.

	  
Category:
Description:

Dynamically loadable object module for net-snmp snmpd that provides access to Varnish Cache statistics.

Related projects:

varnishsnmp

(Not released)
Category:
Description:

A MIB for monitoring and remote management of Varnish Cache.

Related projects:

vcsync

Version: 1.3  —  2021-02-18
* New configuration statement: sentinel

The "sentinel" statement declares the name of a file which, when
present in the destination directory, informs vcsync that this
directory is exempt from the normal synchronization process.  The
presense of the sentinel file is an indication that the destination
directory is updated by other means.

* Full documentation added

	  
Category:
Description:

Vcsync synchronizes files on the file system with the corresponding repository after each commit. It is normally configured as a hook, using the mechanism provided by the version control system of choice (loginfo in CVS, post-commit in SVN, or post-receive in GIT).

Related projects:

vmod-basicauth

Version: 2.0  —  2022-06-25
* Support for Varnish 7.1
	  
Category:
Description:

This Varnish Cache module implements basic HTTP authentication against password files created with the Apache htpasswd utility.

Related projects:

vmod-binlog

Version: 2.7  —  2022-08-21
* Support for Varnish 7.1
	  
Category:
Description:

This module provides API for writing binary log files from Varnish VCL scripts and the utilities for listing and searching in such files.

Related projects:

vmod-dbrw

Version: 2.8  —  2022-08-21
* Support for Varnish 7.1
	  
Category:
Description:

A Varnish Cache module implementing database-driven rewrite rules. Intended for use with web sites that need an exceedingly big number of redirect and/or rewrite rules, Vmod-dbrw allows the administrator to keep all rules in an SQL database of arbitrary structure, thereby considerably speeding up their handling. Another advantage of this approach is that rewrite rules stored in a database are easier to maintain.

Related projects:

vmod-remoteip

Version: 2.3  —  2022-08-21
* Support for Varnish 7.1
	  
Category:
Description:

This module is for Varnish Cache what mod_remoteip is for Apache. It determines the actual client IP address for the connection, using the useragent IP address list presented by a proxy or load balancer via the request headers and a preconfigred list of trusted IP addresses.

vmod-sql

Version: 1.5  —  2022-08-21
* Support for Varnish 7.1
* Drop support for Varnish versions prior to 6.0.0.
	  
Category:
Description:

This module provides SQL interface for Varnish Cache. Both MySQL and PostgreSQL are supported.

Related projects:

vmod-tbf

Version: 2.6  —  2022-08-21
* Support for Varnish 7.1
	  
Category:
Description:

This module implements token bucket filtering for Varnish Cache.

Related projects:

vmod-variable

Version: 1.5  —  2022-08-21
* Support for Varnish 7.1
	  
Category:
Description:

Extended variable support for VCL

Related projects:

wydawca

Version: 4.0.3  —  2021-01-06
Fix handling of archivation requests.

	  
Category:
Description:

An automatic release submission daemon. It implements the GNU automatic upload procedure, and supports upload directive files of version 1.1.

Related projects:

wyslij-po

Version: 3.3  —  2021-02-12
* Fix parsing of po header fields

* Use the Language header instead of Language-Team.

Support for Language-Team and language tables is retained for
backward compatibility.

* Organizational change: repository moved to git

The repository along with links for cloning can be viewed online at
http://git.gnu.org.ua/cgit/wyslij-po.git.

See https://puszcza.gnu.org.ua/git/?group=wyslij-po for instructions.
	  
Category:
Description:

Wyslij-po runs basic checking on PO files given in the command line and submits them to the Translation Project robot.

xenv

Version: 4.0  —  2022-08-25
* Stash storage

Stash is a special kind of storage to hold temporary data.  It is
used to implement several preprocessor features: diversions,
conditionals and loops.  Data are written to the memory for as long
as their amount fits the memory buffer allotted for stash.  The size
of this buffer is controlled by the feature value "stashsize".  When
the buffer gets full, surplus data are written to a temporary
file.  Number of temporary files that can be open simultaneously is
controlled by the feature value "stashfiles".  This works as follows:
when a new stash file needs to be open and the number of already open
files hits the limit, the program will close the least recently used
stash file, thereby freeing a file descriptor for use in the new
stash.  The closed file will eventually be reopened when it is needed,
using the same process.

Default values are: for "stashsize" - the size of the system memory
page, and for "stashfiles" - 2/3 of the soft limit for open files.

* Sink streams

On systems where fopencookie(3) call is available, xenv uses special
"sink" streams for text that's going to be discarded.  This speeds up
the operation and spares open file descriptors.

* New directives: $$ifcom, $$ifncom

  $$ifcom COMMAND
  TEXT1
  $$else
  TEXT2
  $$endif

Runs COMMAND and substitutes TEXT1 if it exits with code 0 and TEXT2
otherwise.  $$incom is similar, but expands to TEXT1 if COMMAND exits
with a non-zero status and to TEXT2 otherwise.

COMMAND is passed to the shell verbatim, i.e. any variable an command
references in it are expanded by the shell and not by xenv (this is
similar to how command expansion behaves).

* Bugfixes

** $$set and $$unset ignored if evaluated in a false conditional branch
	  
Category:
Description:

Xenv is a text preprocessor. It reads input from files (or the standard input, if none are supplied) and prints it on the standard output, replacing references to environment variables with their actual values. Variables are referenced using POSIX-compatible shell syntax: $NAME, ${NAME}, ${NAME:-word}, ${NAME+=word}, ${NAME:=word}, ${NAME:?word}. A special ternary construct is provided: ${NAME:|word1|word2}, which substitutes the expansion of word1 if NAME is set and the expansion of word2 otherwise. Preprocessor directives provide support for inclusion of external files, conditional text expansion (depending on the value of an environment variable or exit code of an external command), diversions, for and foreach loops etc.