Changeset 12009 in project


Ignore:
Timestamp:
09/26/08 12:51:06 (12 years ago)
Author:
elf
Message:

better fix

File:
1 edited

Legend:

Unmodified
Added
Removed
  • release/3/dns/dns.scm

    r12008 r12009  
    292292    (let loop ((adl   (map
    293293                          (lambda (x)
    294                               (cons (string-length x) x))
     294                              (cons (integer->char (string-length x))
     295                                    (string->number x)))
    295296                          (string-split addr "." #t)))
    296297               (len   0)
     
    300301                      (dnserr dns:ipv4->label "too many octets - " addr)
    301302                      (string-append (apply conc ret) zone)))
    302               ((not (string->number (cdar adl)))
    303                   (dnserr dns:ipv4->label
    304                           "invalid ipv4 segment - " (cdar adl)))
    305               ((<= 1 (caar adl) 3)
    306                   (loop (cdr adl) (+ 1 len)
    307                         (cons (integer->char (caar adl))
    308                               (cons (cdar adl) ret))))
     303              ((and (cdar adl) (<= 0 (cdar adl) 255))
     304                  (loop (cdr adl) (+ 1 len)
     305                        (cons (caar adl) (cons (cdar adl) ret))))
     306                        ;(cons (integer->char (caar adl))
     307                        ;      (cons (cdar adl) ret))))
    309308              (else
    310309                  (dnserr dns:ipv4->label
Note: See TracChangeset for help on using the changeset viewer.