ftpd-BSD - standalone i inetd

Arkadiusz Miskiewicz misiek w pld.ORG.PL
Śro, 4 Kwi 2001, 16:02:06 CEST


On/Dnia Wed, Apr 04, 2001 at 03:30:18PM +0200, Jaroslaw Kamper wrote/napisał(a)
> Martwi mnie tylko jeden szczegół - ftpd-BSD z repo się nie kompiluje (oryginał, nie tylko moje):
> ftpd.o(.text+0x3c5): undefined reference to `SA_LEN'
> ftpd.o(.text+0x983): undefined reference to `SA_LEN'
Podałem już na irc jak tego typu problemy z SA_LEN należy poprawiać. Kod
prosto z fetchmaila:

#ifndef SA_LEN
#define SA_LEN(sa)      sa_len(sa)

static size_t sa_len(struct sockaddr *sa)
{
        switch(sa->sa_family) {
#ifdef AF_INET
                case AF_INET:
                        return sizeof(struct sockaddr_in);
#endif
#ifdef AF_INET6
                case AF_INET6:
                        return sizeof(struct sockaddr_in6);
#endif
                default:
                        return sizeof(struct sockaddr);
        }
}
#endif /* SA_LEN */

Można też brzydszą ale krótszą:
#define SA_LEN(x)	(((x)->sa_family == AF_INET6) ? sizeof(struct sockaddr_in6) \
							: sizeof(struct sockaddr_in))                                      
do wyboru do koloru.

> Jarosław Kamper		   jack w jack.eu.org	         UIN: 35713516

-- 
Arkadiusz Miśkiewicz, AM2-6BONE    [ PLD GNU/Linux IPv6 ]
http://www.t17.ds.pwr.wroc.pl/~misiek/ipv6/   [ enabled ]



Więcej informacji o liście dyskusyjnej pld-devel-pl