Hello Herman -
What you show below looks fine.
BTW - in all of the Radiator code, $p refers to the incoming request packet and $rp refers to the reply packet.
Just to avoid confusion I would probably change $p to $rp.
See the example hooks in "goodies/hooks.txt".
There are also lots of utility routines in Radiator itself and in CPAN that may be useful.
BTW - you do not need two "if" statements, you can just do this:
my $SessionTimeout = $p->get_attr('Session-Timeout');
��if( $SessionTimeout eq 'EM')
��{
.....regards
Hugh
On 20/12/2003, at 3:04 AM, Herman verschooten wrote:
Hi,
�
I was looking for a way to dynamically set the session-timeout to the end of the month.� Since this does not seem to be standard, I made an attempt to write a PostAuthHook:
�
use Time::Local;
# If Session-Timeout=EM then set it to the number of seconds left in this month.
sub
{
�my $p = ${$_[1]};
�
�my $SessionTimeout = $p->get_attr('Session-Timeout');
�if (defined $SessionTimeout)
�{
��if( $SessionTimeout eq 'EM')
��{
���my $sec;
���my $min;
���my $hour;
���my $mday;
���my $mon;
���my $year;
���my $wday;
���my $yday;
���my $isdst;
���($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);
�
���$mon++;
���$year+=1900;
�
���if($mon eq 12)
���{
����$mon = 0;
����$year++;
���}
�
���my $Timeout = timelocal(0,0,0,1,$mon,$year) -1 - time;
���$p->change_attr('Session-Timeout',$Timeout);
��}
�}
}
If anybody knows a better way to do this, please let me know.
�
Greetings,
�
Herman verschooten
�
�
WebVisie bvba
Een klare kijk op interne en externe communicatie
_______________________________________________
Oudaan 15�/ 33��������2000 Antwerpen������http://www.webvisie.net
tel 03/206.72.70�������fax 03/[EMAIL PROTECTED]
�
NB: have you included a copy of your configuration file (no secrets), together with a trace 4 debug showing what is happening?
-- Radiator: the most portable, flexible and configurable RADIUS server anywhere. Available on *NIX, *BSD, Windows, MacOS X. - Nets: internetwork inventory and management - graphical, extensible, flexible with hardware, software, platform and database independence. - CATool: Private Certificate Authority for Unix and Unix-like systems.
=== Archive at http://www.open.com.au/archives/radiator/ Announcements on [EMAIL PROTECTED] To unsubscribe, email '[EMAIL PROTECTED]' with 'unsubscribe radiator' in the body of the message.
