Index: trunk/dns-rpc.cgi
===================================================================
--- trunk/dns-rpc.cgi	(revision 671)
+++ trunk/dns-rpc.cgi	(revision 672)
@@ -547,5 +547,5 @@
       if (scalar(@$reclist) == 0) {
         # Aren't Magic Numbers Fun?  See pseudotype list in dnsadmin.
-        my $type = ($cidr->{isv6} ? 65284 : ($cidr->masklen == 32 ? 65280 : 65283) );
+        my $type = ($cidr->{isv6} ? ($cidr->masklen == 128 ? 65281 : 65284) : ($cidr->masklen == 32 ? 65280 : 65283) );
         rpc_addRec(defrec => 'n', revrec => 'y', parent_id => $zonelist->[0]->{rdns_id}, type => $type,
           address => "$cidr", %args);
@@ -558,5 +558,5 @@
           next unless $rec->{val} eq $filt;	# make sure we really update the record we want to update.
           updateRec(defrec =>'n', revrec => 'y', id => $rec->{record_id},
-            parent_id => $zonelist->[0]->{rdns_id}, %args);
+            parent_id => $zonelist->[0]->{rdns_id}, address => "$cidr", %args);
           $flag = 1;
           last;	# only do one record.
@@ -648,5 +648,5 @@
           # Re-add one to match the parent if we've been given a pattern to use.
           rpc_addRec(defrec => 'n', revrec => 'y', parent_id => $zonelist->[0]->{rdns_id},
-                 type => ($zone->{isv6} ? 65284 : 65283), address => "$cidr", %args);
+                 type => ($zone->{isv6} ? 65284 : 65283), address => "$cidr", name => $args{parpatt}, %args);
         }
 
