---
name: "hinfo.conf"
section: "5"
platform: "linux"
package: "hinfo"
version: "1.02-3.2"
release: "Debian 5.0 (Lenny)"
platforms: ["linux"]
url: "https://new.carta.tech/hinfo.conf"
---

# hinfo.conf(5)

## NAME

*~/.hinforc*\
 */etc/hinfo.conf*\
 */usr/local/etc/hinfo.conf*

## DESCRIPTION

These are configuration files used by hinfo.  Only the first one found (in order) is used.  The *use* statement may be used to chain hinfo configuration files.

The syntax is a small perl subset.  Comments begin with # as the first non-space character on a line and continue to the end of line. Newlines are not treated specially otherwise, but should be used for readability.  Whitespace between tokens is ignored.

## STATEMENTS

- use *FILENAME*;

  The use statement will process another file as if its lines were in the configuration file. *FILENAME* should be a quoted (single or double) string.

## ASSIGNMENTS

*$SCALAR* = *VAL*;\
 *@ARRAY* = ( \[*VAL*,\]... );\
 *%HASH* = ( \[*VAL1* =\> *VAL2*,\]... );

In array and hash assignment, the comma before the close paren is optional.

*VAL* may be any of:

Number (decimal integers only)

Quoted string (With single quotes, \\\\ is treated as a single backslash and \\´ is a single quote.  With double quotes, other backslash expansions are done.)

Array reference \[ \[*VAL*,\]... \]

Hash reference { \[*VAL1* =\> *VAL2*,\] }

Subroutine reference *\\&SUB* (only a few subroutine names are supported)

Variable contents *$VAR*

Array contents (in array and array reference definitions only) *@ARRAY*

## VARIABLES

The following variables are defined: (options that effect values are in parens.)

- $html

  (-u) nonzero indicates html mode

- $pager

  (-p, -n) Pager used

- $verbose

  (-v) values -3 through 3 specify how many messages are displayed

- $no\_abuse

  (-a)

- $no\_blackhole

  (-b)

- $no\_whois

  (-w)

- $no\_domain

  (-d)

- $whoistrash

  Regular expression of what to ignore in whois output.

- $whoismltrash

  Regular expression of multi-line ignores in whois output.

- $exclude

  Regular expression of blackhole lists to not use.  Used to  modify both @bhlists and @domainbased.

- $expand\_handles

  (-e) Negative to never expand NIC handles Zero to expand first NIC handle only Positive to expand all NIC handles

- $timeout

  (-t) Number of seconds to wait for DNS and whois servers. Timeouts only occur when there have been no results from any request for this amount of time.

- $whoistimeout

  Timeout parameter to *IO::Socket::INET-\>new* call.

- $nameserver

  (-s)

- $mx

  (-m)

- @bhlists

  IP based blackhole lists to use.

- @domainbased

  Domain based blackhole lists to use.

- @version

  Displayed by --version

- %registrys

  Hash mapping most significant IP octet to whois server

- %refer

  Hash containing information about whois servers referring to other whois servers.

## EXAMPLE

\# use system defaults\
 use "/etc/hinfo.conf";\
 \# set verbose mode\
 $verbose = 3;\
 \# exclude .blackholes.us DNSBLs\
 $exclude = "\\.blackholes\\.us$";

## BLACKHOLE LISTS

*@bhlists* and *@domainbased* are lists of DNSBL lists to check.  Each list entry is a list reference.

- DNS domain

  Domain to be postfixed to the reversed IP or domain name.

- List name

  Name of the DNSBL

- URL

  URL of the DNSBL.  (Not including the leading http://)

- explain subroutine

  Subroutine to explain the DNSBL results.

- explain subroutine parameter

  Used by explain subroutine

## EXPLAIN SUBROUTINES

- \\\\&explain\_bitmask

  Use the least significant bits of the IP returned as binary flags for each of the entries the the list referenced by  *parameter*.

- \\\\&explain\_iterate

  Use the least significant bits of the IP returned as an index into the list referenced by *parameter.*

- \\\\&explain\_txt

  Fetch the TXT record from the DNSBL.

- \\\\&explain\_iterate\_txt

  Perform actions of both *\\\\&explain\_iterate* and *\\\\&explain\_txt.*

## USAGE

Examples of *@bhlists* and *@domainbased* are in */var/lib/hinfo/dnsbl.ins.pl*, which is normally included with the *use* statement.

Examples of *%registries*, *%refer*, *$whoistrash*, and *$whoismltrash* are in */var/lib/hinfo/whois.ins.pl*, which is also normally included with *use*.

## SEE ALSO

*[hinfo(1)](/hinfo/1.md)*

## FILES

*/var/lib/hinfo/dnsbl.ins.pl*\
 */var/lib/hinfo/whois.ins.pl*
