qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [patch] use socklen_t with getsockopt()


From: Mike Frysinger
Subject: Re: [Qemu-devel] [patch] use socklen_t with getsockopt()
Date: Sun, 1 Apr 2007 18:25:55 -0400
User-agent: KMail/1.9.6

On Sunday 01 April 2007, Thiemo Seufer wrote:
> Mike Frysinger wrote:
> > obvious fixup ... getsockopt() takes a socklen_t, not an int
>
> This is incorrect. Its initial value is sizeof(val).

attached
-mike

Attachment: pgpXUGy9F_WDR.pgp
Description: PGP signature

--- linux-user/syscall.c
+++ linux-user/syscall.c
@@ -642,7 +642,8 @@ static long do_setsockopt(int sockfd, in
 static long do_getsockopt(int sockfd, int level, int optname, 
                           target_ulong optval, target_ulong optlen)
 {
-    int len, lv, val, ret;
+    int len, val, ret;
+    socklen_t lv;
 
     switch(level) {
     case TARGET_SOL_SOCKET:
@@ -665,7 +666,7 @@ static long do_getsockopt(int sockfd, in
         len = tget32(optlen);
         if (len < 0)
             return -EINVAL;
-        lv = sizeof(int);
+        lv = sizeof(val);
         ret = get_errno(getsockopt(sockfd, level, optname, &val, &lv));
         if (ret < 0)
             return ret;
@@ -698,7 +699,7 @@ static long do_getsockopt(int sockfd, in
             len = tget32(optlen);
             if (len < 0)
                 return -EINVAL;
-            lv = sizeof(int);
+            lv = sizeof(val);
             ret = get_errno(getsockopt(sockfd, level, optname, &val, &lv));
             if (ret < 0)
                 return ret;

reply via email to

[Prev in Thread] Current Thread [Next in Thread]