analizowałem wersję # $Id: lms-makeopenbsdpf,v 1.25 2004/04/02 18:06:30 alec Exp $
i oto co poprawiłem: diff poniżej:
48c48 < my $bmask = 2**32 <<(32-$prefix); ---
my $bmask = ((2**32-1) <<(32-$prefix));
211c212 < my $sdbq = $dbase->prepare("SELECT inet_address(address) AS address, mask FROM networks WHERE name = U ---
my $sdbq = $dbase->prepare("SELECT
inet_ntoa(address) AS address, mask FROM networks WHERE name = UPPE 227c228 < my $sdbq = $dbase->prepare("SELECT ipaddr FROM nodes WHERE access = 1"); ---
my $sdbq = $dbase->prepare("SELECT inet_ntoa(ipaddr) AS
ipaddr FROM nodes WHERE access = 1");
a co było źle: 1) maska podsieci obliczana od wartości 1.0.0.0.0 a nie od 255.255.255.255 2) nie ma polecenia w mysql o treści 'inet_address' 3) powinniśmy pobrać adres node'a w postaci '0.0.0.0' a nie zbita liczba, bo występuje błąd przy konwersji w procedurze matchip
Testowane na FreeBSD4.10.