[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Problem report #15
From: |
Stuart D. Herring |
Subject: |
Re: Problem report #15 |
Date: |
Wed, 12 Apr 2006 10:36:51 -0700 (PDT) |
User-agent: |
SquirrelMail/1.4.3a-11.EL3 |
> FAMILY can't be invalid because get_lisp_to_sockaddr_size
> has made sure it is valid.
>
> (The comment said size_lisp_to_sockaddr; I fixed that.)
I don't see how get_lisp_to_sockaddr_size does that. If `address' is a
Lisp vector but has length, say, 15, it seems that `family' (`familyp') is
never assigned. As far as I can tell, no one ever checks the value of
family between there and where it is compared to AF_INET and AF_INET6. If
it compares unequal to each of those, then `cp' in conv_lisp_to_sockaddr
will be left NULL and the last line in conv_lisp_to_sockaddr will
segfault.
I think this bug is real, then -- probably just need to signal a Lisp
error in conv_lisp_to_sockaddr if the address is a vector but family is
neither AF_INET nor AF_INET6.
Davis
--
This product is sold by volume, not by mass. If it appears too dense or
too sparse, it is because mass-energy conversion has occurred during
shipping.