in.chargend - UDP or TCP character generator service daemon
The in.chargend service provides the server-side of the character-generator protocol. This protocol is used for debugging and bandwidth measurement and is available on both TCP and UDP transports, through port 19.
Once a connection is established, the in.chargend generates a stream of data. Any data received is discarded. The server generates data until the client program terminates the connection. Note that the data flow is limited by TCP flow control mechanisms.
The in.chargend listens for UDP datagrams. When a datagram is received, the server generates a UDP datagram in response containing a random number of ASCII characters (ranging from 0 to 512 characters). Any received data is ignored.
The in.chargend data consists of a pattern of 72 character lines containing the printable, 7–bit ASCII characters. Each line is terminated with a carriage return and a line feed character.
See attributes(7) for descriptions of the following attributes:
Postel, J. RFC 864, Character Generator Protocol. Network Working Group. May 1983. https://tools.ietf.org/html/rfc864
The in.chargend service is managed by the service management facility, smf(7), under the service identifier:
Administrative actions on this service, such as enabling, disabling, or requesting restart, can be performed using svcadm(8). Responsibility for initiating and restarting this service is delegated to inetd(8). Use inetadm(8) to make configuration changes and to view configuration information for this service. The service's status can be queried using the svcs(1) command.
The in.chargend program and the svc:/internet/chargen:default service were added in the Solaris 10 3/05 release. Prior to that, support for the chargen service was provided as a builtin part of inetd(8) since the initial release of Solaris.
Support for IPv6 was added in Solaris 8.
The chargen service was enabled by default in releases up through Solaris 9, but has been disabled by default since the Solaris 10 3/05 release.