Index: /trunk/cgi-bin/admin.cgi
===================================================================
--- /trunk/cgi-bin/admin.cgi	(revision 542)
+++ /trunk/cgi-bin/admin.cgi	(revision 543)
@@ -115,5 +115,6 @@
 elsif ($webvar{action} eq 'alloc') {
 
-  if ($webvar{cidr} !~ /^\s*(\d{1,3}\.){3}\d{1,3}(\/\d{2})?\s*$/) {
+  my $cidr = new NetAddr::IP $webvar{cidr};
+  if (!$cidr || "$cidr" =~ /^0/) {
     $page->param(errmsg => "Can't allocate something that's not a netblock/ip");
     goto ERRJUMP;
@@ -145,5 +146,4 @@
   }
 
-  my $cidr = new NetAddr::IP $webvar{cidr};
   my @data;
   if ($webvar{alloctype} eq 'rm') {
