commit-hurd
[Top][All Lists]
Advanced

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

[hurd] 38/53: trans/ifsock: fix receiver lookup


From: Samuel Thibault
Subject: [hurd] 38/53: trans/ifsock: fix receiver lookup
Date: Thu, 20 Mar 2014 02:23:52 +0000

This is an automated email from the git hooks/post-receive script.

sthibault pushed a commit to branch upstream
in repository hurd.

commit 666830d8a75a3676f60b48028b115edb19d06cc7
Author: Justus Winter <address@hidden>
Date:   Sat Mar 1 11:55:50 2014 +0100

    trans/ifsock: fix receiver lookup
    
    * trans/Makefile: Add ifsock-MIGSFLAGS.
    * trans/ifsock.c (S_ifsock_getsockaddr): Fix receiver lookup.
---
 trans/Makefile | 5 +++++
 trans/ifsock.c | 9 ++++-----
 2 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/trans/Makefile b/trans/Makefile
index e74a869..a294282 100644
--- a/trans/Makefile
+++ b/trans/Makefile
@@ -37,6 +37,11 @@ password-MIGSFLAGS=\
     "-DIO_DESTRUCTOR=trivfs_end_using_protid (trivfs_protid_t)" \
     "-DPASSWORD_IMPORTS=import \"../libtrivfs/mig-decls.h\";"
 
+ifsock-MIGSFLAGS=\
+    "-DFILE_INTRAN=trivfs_protid_t trivfs_begin_using_protid (io_t)" \
+    "-DFILE_DESTRUCTOR=trivfs_end_using_protid (trivfs_protid_t)" \
+    "-DIFSOCK_IMPORTS=import \"../libtrivfs/mig-decls.h\";"
+
 include ../Makeconf
 
 vpath elfcore.c $(top_srcdir)/exec
diff --git a/trans/ifsock.c b/trans/ifsock.c
index 092bb40..4ed6589 100644
--- a/trans/ifsock.c
+++ b/trans/ifsock.c
@@ -131,15 +131,15 @@ trivfs_goaway (struct trivfs_control *fsys, int flags)
 }
 
 error_t
-S_ifsock_getsockaddr (file_t sockfile,
+S_ifsock_getsockaddr (struct trivfs_protid *cred,
                      mach_port_t *address)
 {
-  struct trivfs_protid *cred = ports_lookup_port (port_bucket, sockfile,
-                                                 node_class);
   int perms;
   error_t err;
 
-  if (!cred)
+  if (!cred
+      || cred->pi.bucket != port_bucket
+      || cred->pi.class != node_class)
     return EOPNOTSUPP;
 
   err = file_check_access (cred->realnode, &perms);
@@ -148,6 +148,5 @@ S_ifsock_getsockaddr (file_t sockfile,
 
   if (!err)
     *address = address_port;
-  ports_port_deref (cred);
   return err;
 }

-- 
Alioth's /usr/local/bin/git-commit-notice on 
/srv/git.debian.org/git/pkg-hurd/hurd.git



reply via email to

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