X-Git-Url: https://git.openpandora.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=net%2Frose%2Faf_rose.c;h=bf76dec76e00bec4b532f116d4c947e61b128c24;hb=a598f7fa9c24c3ef458043d59c237b8fc5d1adad;hp=f9ea925ad9cb6c1628bf6f38a57c4f49c210b589;hpb=9693ebd4815eefa2b7c8fcc699061a0c8da0c1e7;p=pandora-kernel.git diff --git a/net/rose/af_rose.c b/net/rose/af_rose.c index f9ea925ad9cb..bf76dec76e00 100644 --- a/net/rose/af_rose.c +++ b/net/rose/af_rose.c @@ -1221,7 +1221,6 @@ static int rose_recvmsg(struct kiocb *iocb, struct socket *sock, { struct sock *sk = sock->sk; struct rose_sock *rose = rose_sk(sk); - struct sockaddr_rose *srose = (struct sockaddr_rose *)msg->msg_name; size_t copied; unsigned char *asmptr; struct sk_buff *skb; @@ -1257,7 +1256,11 @@ static int rose_recvmsg(struct kiocb *iocb, struct socket *sock, skb_copy_datagram_iovec(skb, 0, msg->msg_iov, copied); - if (srose != NULL) { + if (msg->msg_name) { + struct sockaddr_rose *srose; + + memset(msg->msg_name, 0, sizeof(struct full_sockaddr_rose)); + srose = msg->msg_name; srose->srose_family = AF_ROSE; srose->srose_addr = rose->dest_addr; srose->srose_call = rose->dest_call;