struct worker *wrk;
unsigned sockaddrlen;
- struct sockaddr sockaddr[2];
+ struct sockaddr_storage sockaddr[1];
unsigned mysockaddrlen;
- struct sockaddr mysockaddr[2];
+ struct sockaddr_storage mysockaddr[1];
/* formatted ascii client address */
char addr[TCP_ADDRBUFSIZE];
VCA_Prep(struct sess *sp)
{
- TCP_name(sp->sockaddr, sp->sockaddrlen,
+ TCP_name((struct sockaddr *)sp->sockaddr, sp->sockaddrlen,
sp->addr, sizeof sp->addr, sp->port, sizeof sp->port);
VSL(SLT_SessionOpen, sp->fd, "%s %s", sp->addr, sp->port);
sp->acct.first = sp->t_open.tv_sec;
struct sockaddr *
VRT_r_client_ip(struct sess *sp)
{
- return (sp->sockaddr);
+ return ((struct sockaddr *)sp->sockaddr);
}
struct sockaddr *
if (sp->mysockaddrlen == 0) {
l = sizeof sp->mysockaddr;
- AZ(getsockname(sp->fd, sp->mysockaddr, &l));
+ AZ(getsockname(sp->fd,
+ (struct sockaddr*)sp->mysockaddr, &l));
sp->mysockaddrlen = l;
}
- return (sp->mysockaddr);
+ return ((struct sockaddr*)sp->mysockaddr);
}
for (a1 = ap->priv; a1 != NULL; a1 = a1->ai_next) {
/* only match the right family */
- if (a1->ai_family != sp->sockaddr->sa_family)
+ if (a1->ai_family != sp->sockaddr->ss_family)
continue;
if (a1->ai_family == AF_INET) {