[Chapter 15] 15.2 Net::NNTP
Author: Ellen Siever, Stephen Spainhour & Nathan Patwardhan
Date: 1999-07-02T01:57:19Z

#

| Chapter 15 Usenet News |

## 15.2 Net::NNTP

Net::NNTP is one of the libnet modules. It provides methods for programming a news client to interface with an NNTP server. Net::NNTP implements the NNTP protocol as defined in RFC 977, as well as a number of extensions defined in the IETF Internet Draft document mentioned earlier.

For example, the following code:

>     $nntp->post(@message);

is equivalent to issuing the post command and associated X-headers directly to an NNTP server on port 119.

### 15.2.1 Initializing the NNTP Client

To use Net::NNTP, create a new Net::NNTP object:

>     use Net::NNTP;
>     $nntp = Net::NNTP->new;   # Use default port and options

Once you've created the object, you can use any of the Net::NNTP methods on that object. The Net::NNTP methods generally parallel the functionality of the raw NNTP commands. Your news client can be written to perform many functions, including:

- Authenticating a user to the server

- Listing available newsgroups

- Retrieving news headers and articles

- Extracting headers

- Checking for new articles

- Posting articles

- Listing information such as active messages in a newsgroup, new newsgroups, valid distribution areas, or message IDs of newly arrived messages

### 15.2.2 Net::NNTP Reference

Net::NNTP includes methods that implement many of the extensions to RFC 977; the description indicates if a method is an extension. Extensions that are not supported by Net::NNTP are AUTHINFO GENERIC, XINDEX, XSEARCH, and XTHREAD. In addition, some extensions supported by Net::NNTP may not be supported by a particular server.

Unless otherwise stated, all the methods return either true or false to indicate success or failure. If a method returns a value instead, then it returns `undef` or an empty list to indicate failure.

In this list, message-spec refers to a single message ID, a single message number, or a reference to a list of two message numbers. It can also be passed as a list of two message numbers, but this is for compatibility only and is now deprecated.

Where pattern-matching is indicated, the matching is done according to the NNTP specification. See the Net::NNTP documentation for details.

- new
- active
- active_times
- article
- authinfo
- body
- date
- distributions
- group
- head
- ihave
- last
- list
- listgroup
- newgroups
- newnews
- newsgroups
- next
- nntpstat
- overview_fmt
- post
- postok
- quit
- reader
- slave
- subscriptions
- xgtitle
- xhdr
- xover
- xpat
- xpath
- xrover

15.1 The NNTP Protocol |  | 15.3 The News::Newsrc Module