3 <TITLE>FS::port - Object methods for port records</TITLE>
4 <LINK REV="made" HREF="mailto:perl@packages.debian.org">
9 <A NAME="__index__"></A>
14 <LI><A HREF="#name">NAME</A></LI>
15 <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
16 <LI><A HREF="#description">DESCRIPTION</A></LI>
17 <LI><A HREF="#methods">METHODS</A></LI>
18 <LI><A HREF="#version">VERSION</A></LI>
19 <LI><A HREF="#bugs">BUGS</A></LI>
20 <LI><A HREF="#see also">SEE ALSO</A></LI>
26 <H1><A NAME="name">NAME</A></H1>
27 <P>FS::port - Object methods for port records</P>
30 <H1><A NAME="synopsis">SYNOPSIS</A></H1>
34 $record = new FS::port \%hash;
35 $record = new FS::port { 'column' => 'value' };</PRE>
37 $error = $record->insert;</PRE>
39 $error = $new_record->replace($old_record);</PRE>
41 $error = $record->delete;</PRE>
43 $error = $record->check;</PRE>
45 $session = $port->session;</PRE>
48 <H1><A NAME="description">DESCRIPTION</A></H1>
49 <P>An FS::port object represents an individual port on a NAS. FS::port inherits
50 from FS::Record. The following fields are currently supported:</P>
52 <DT><STRONG><A NAME="item_portnum_%2D_primary_key">portnum - primary key</A></STRONG><BR>
54 <DT><STRONG><A NAME="item_ip_%2D_IP_address_of_this_port">ip - IP address of this port</A></STRONG><BR>
56 <DT><STRONG><A NAME="item_nasport_%2D_port_number_on_the_NAS">nasport - port number on the NAS</A></STRONG><BR>
58 <DT><STRONG><A NAME="item_nasnum_%2D_NAS_this_port_is_on_%2D_see_FS%3A%3Anas">nasnum - NAS this port is on - see <A HREF=".././FS/nas.html">the FS::nas manpage</A></A></STRONG><BR>
63 <H1><A NAME="methods">METHODS</A></H1>
65 <DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
67 Creates a new port. To add the example to the database, see <A HREF="#insert">insert</A>.
68 <P>Note that this stores the hash reference, not a distinct copy of the hash it
69 points to. You can ask the object for a copy with the <EM>hash</EM> method.</P>
71 <DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
73 Adds this record to the database. If there is an error, returns the error,
74 otherwise returns false.
76 <DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
78 Delete this record from the database.
80 <DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
82 Replaces the OLD_RECORD with this one in the database. If there is an error,
83 returns the error, otherwise returns false.
85 <DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
87 Checks all fields to make sure this is a valid example. If there is
88 an error, returns the error, otherwise returns false. Called by the insert
91 <DT><STRONG><A NAME="item_session">session</A></STRONG><BR>
93 Returns the currently open session on this port, or if no session is currently
94 open, the most recent session. See <A HREF=".././FS/session.html">the FS::session manpage</A>.
98 <H1><A NAME="version">VERSION</A></H1>
99 <P>$Id: port.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
102 <H1><A NAME="bugs">BUGS</A></H1>
103 <P>The author forgot to customize this manpage.</P>
104 <P>The session method won't deal well if you have multiple open sessions on a
105 port, for example if your RADIUS server drops <STRONG>stop</STRONG> records. Suggestions for
106 how to deal with this sort of lossage welcome; should we close the session
107 when we get a new session on that port? Tag it as invalid somehow? Close it
108 one second after it was opened? *sigh* Maybe FS::session shouldn't let you
109 create overlapping sessions, at least folks will find out their logging is
110 dropping records.</P>
111 <P>If you think the above refers multiple user logins you need to read the
115 <H1><A NAME="see also">SEE ALSO</A></H1>
116 <P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, schema.html from the base documentation.</P>