home | O'Reilly's CD bookshelfs | FreeBSD | Linux | Cisco | Cisco Exam    

Book HomeJava and XSLTSearch this book

8.152. Net::Config

Holds configuration data for the modules in the libnet distribution. Net::Config builds this configuration interactively at install time of libnet, and the Net::Config file is further queried when you use modules such as Net::FTP. This module is part of the core Perl distribution starting with Perl 5.8.

Net::Config stores the following values (which can be undef): nntp_hosts, snpp_hosts, pop3_hosts, smtp_hosts, ph_hosts, daytime_hosts, and time_hosts. Each is a reference to an array of hostnames (in order of preference), which should be used for the given protocol. You can override any of the Net::Config values when you use any of the modules that live under the libnet umbrella. In addition, you can maintain your own .libnetrc to hold your custom values all the time. A sample .libnetrc follows:

$ cat .libnetrc
# .libnetrc
    nntp_hosts => [ "news.my.host", "news.their.host" ]
_  _END_  _

In addition to the options listed previously, the following options can be specified:

Your Internet domain name.

If you have an FTP proxy firewall (not an HTTP or SOCKS firewall), then this value should be set to the firewall hostname. If your firewall does not listen on port 21, then this value should be set to hostname:port (e.g., hostname:99).

An integer from 1 to 7 signifying the sequence of commands that Net::FTP will use to traverse a firewall, as follows:

There is no firewall (default).

USER user@remote.host
PASS password
USER firewall_username
PASS firewall_password
USER user@remote.host
PASS pass
USER firewall_username
PASS firewall_password
SITE remote.site
USER user
PASS pass
USER firewall_username
PASS firewall_password
OPEN remote.site
USER user
PASS pass
USER user@firewall_username@remote.site
PASS pass@firewall_password
USER firewall_username@remote.site
PASS firewall_password
USER user
PASS pass
USER user@remote.host
PASS pass
AUTH firewall_username
RESP firewall_password
FTP servers normally work in a nonpassive mode: when you want to transfer data, you have to tell the server the address and port to connect to. This becomes a problem because some servers cannot connect to your machine through the second port because it's being used by the FTP connection. In this case, set ftp_ext_passive to true.

If your server is configured to only work in passive mode, you can force Net::FTP to always transfer in passive mode when not going via a firewall by setting ftp_int_passive to true.

A reference to a list of netmask strings. To be used by the requires_firewall function to determine if a given host is inside or outside your firewall.

The following method is supported by Net::Config.



Determines if host is outside of your firewall. Possible return values are:

Cannot look up hostname

Host is inside firewall (or there is no FTP_firewall entry)

Host is outside the firewall

Library Navigation Links

Copyright © 2002 O'Reilly & Associates. All rights reserved.