Added support for TXT records.
authorkhoff <khoff>
Fri, 15 Apr 2005 20:29:38 +0000 (20:29 +0000)
committerkhoff <khoff>
Fri, 15 Apr 2005 20:29:38 +0000 (20:29 +0000)
FS/FS/Conf.pm
FS/FS/domain_record.pm
FS/FS/svc_domain.pm
httemplate/view/svc_domain.cgi

index fa5d3c1..703b321 100644 (file)
@@ -647,7 +647,7 @@ httemplate/docs/config.html
     'editlist_parts' => [ { type=>'text' },
                           { type=>'immutable', value=>'IN' },
                           { type=>'select',
-                            select_enum=>{ map { $_=>$_ } qw(A CNAME MX NS)} },
+                            select_enum=>{ map { $_=>$_ } qw(A CNAME MX NS TXT)} },
                           { type=> 'text' }, ],
   },
 
index 7b67f66..f052f83 100644 (file)
@@ -257,8 +257,8 @@ sub check {
   $self->recaf =~ /^(IN)$/ or return "Illegal recaf: ". $self->recaf;
   $self->recaf($1);
 
-  $self->rectype =~ /^(SOA|NS|MX|A|PTR|CNAME|_mstr)$/
-    or return "Illegal rectype (only SOA NS MX A PTR CNAME recognized): ".
+  $self->rectype =~ /^(SOA|NS|MX|A|PTR|CNAME|TXT|_mstr)$/
+    or return "Illegal rectype (only SOA NS MX A PTR CNAME TXT recognized): ".
               $self->rectype;
   $self->rectype($1);
 
@@ -291,6 +291,10 @@ sub check {
     $self->recdata =~ /^([a-z0-9\.\-]+|\@)$/i
       or return "Illegal data for CNAME record: ". $self->recdata;
     $self->recdata($1);
+  } elsif ( $self->rectype eq 'TXT' ) {
+    $self->recdata =~ /^((?:\S+)|(?:"[[:ascii:]]+"))$/
+      or return "Illegal data for TXT record: ". $self->recdata;
+    $self->recdata($1);
   } elsif ( $self->rectype eq '_mstr' ) {
     $self->recdata =~ /^((\d{1,3}\.){3}\d{1,3})$/
       or return "Illegal data for _master pseudo-record: ". $self->recdata;
index 2642146..6d54357 100644 (file)
@@ -369,6 +369,7 @@ sub domain_record {
     MX => 3,
     CNAME => 4,
     A => 5,
+    TXT => 6,
   );
 
   sort { $order{$a->rectype} <=> $order{$b->rectype} }
index cd9f79d..057b157 100755 (executable)
@@ -87,7 +87,7 @@ Service #<%= $svcnum %>
 <INPUT TYPE="text" NAME="reczone"> 
 <INPUT TYPE="hidden" NAME="recaf" VALUE="IN"> IN 
  <SELECT NAME="rectype">
-<% foreach (qw( A NS CNAME MX PTR) ) { %>
+<% foreach (qw( A NS CNAME MX PTR TXT) ) { %>
   <OPTION VALUE="<%=$_%>"><%=$_%></OPTION>
 <% } %>
  </SELECT>