* cert.c (get_cert): Disable IPGP types for now until the format questions
authorDavid Shaw <dshaw@jabberwocky.com>
Thu, 26 Jan 2006 16:51:04 +0000 (16:51 +0000)
committerDavid Shaw <dshaw@jabberwocky.com>
Thu, 26 Jan 2006 16:51:04 +0000 (16:51 +0000)
in the draft are settled.

* srv.c (getsrv): Error on oversize SRV responses.

util/ChangeLog
util/cert.c
util/srv.c

index 9b596ce..624dbae 100644 (file)
@@ -1,3 +1,10 @@
+2006-01-26  David Shaw  <dshaw@jabberwocky.com>
+
+       * cert.c (get_cert): Disable IPGP types for now until the format
+       questions in the draft are settled.
+
+       * srv.c (getsrv): Error on oversize SRV responses.
+
 2005-12-24  David Shaw  <dshaw@jabberwocky.com>
 
        * cert.c (get_cert): Properly chase down CNAMEs pointing to CERTs.
index 11a3016..e37544e 100644 (file)
@@ -134,6 +134,7 @@ get_cert(const char *name,size_t max_size,IOBUF *iobuf,char **url)
              ret=1;
              break;
            }
+#if 0
          else if(ctype==6 && dlen<1023 && url)
            {
              /* Sanity check the IPGP URL type that the URL isn't too
@@ -145,6 +146,7 @@ get_cert(const char *name,size_t max_size,IOBUF *iobuf,char **url)
              ret=2;
              break;
            }
+#endif
 
          /* Neither type matches, so go around to the next answer. */
          pt+=dlen;
index 21f1d9a..95187db 100644 (file)
@@ -42,7 +42,8 @@
 #define T_SRV 33
 #endif
 
-static int priosort(const void *a,const void *b)
+static int
+priosort(const void *a,const void *b)
 {
   const struct srventry *sa=a,*sb=b;
   if(sa->priority>sb->priority)
@@ -64,7 +65,7 @@ getsrv(const char *name,struct srventry **list)
   *list=NULL;
 
   r=res_query(name,C_IN,T_SRV,answer,PACKETSZ);
-  if(r<sizeof(HEADER))
+  if(r<sizeof(HEADER) || r>PACKETSZ)
     return -1;
 
   if((((HEADER *)answer)->rcode)==NOERROR &&