diff options
Diffstat (limited to 'libnetfs')
-rw-r--r-- | libnetfs/demuxer.c | 14 | ||||
-rw-r--r-- | libnetfs/release-peropen.c | 5 |
2 files changed, 12 insertions, 7 deletions
diff --git a/libnetfs/demuxer.c b/libnetfs/demuxer.c index 8ef4d86b..4c20ab62 100644 --- a/libnetfs/demuxer.c +++ b/libnetfs/demuxer.c @@ -20,17 +20,17 @@ #include "netfs.h" +#include "io_S.h" +#include "fs_S.h" +#include "../libports/notify_S.h" +#include "fsys_S.h" +#include "../libports/interrupt_S.h" +#include "ifsock_S.h" + int netfs_demuxer (mach_msg_header_t *inp, mach_msg_header_t *outp) { - mig_routine_t netfs_io_server_routine (mach_msg_header_t *); - mig_routine_t netfs_fs_server_routine (mach_msg_header_t *); - mig_routine_t ports_notify_server_routine (mach_msg_header_t *); - mig_routine_t netfs_fsys_server_routine (mach_msg_header_t *); - mig_routine_t ports_interrupt_server_routine (mach_msg_header_t *); - mig_routine_t netfs_ifsock_server_routine (mach_msg_header_t *); - mig_routine_t routine; if ((routine = netfs_io_server_routine (inp)) || (routine = netfs_fs_server_routine (inp)) || diff --git a/libnetfs/release-peropen.c b/libnetfs/release-peropen.c index d4d3574c..c206b438 100644 --- a/libnetfs/release-peropen.c +++ b/libnetfs/release-peropen.c @@ -18,6 +18,7 @@ along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. */ +#include <sys/file.h> #include "netfs.h" void @@ -39,6 +40,10 @@ netfs_release_peropen (struct peropen *po) if (po->shadow_root_parent) mach_port_deallocate (mach_task_self (), po->shadow_root_parent); + if (po->lock_status != LOCK_UN) + fshelp_acquire_lock (&po->np->userlock, &po->lock_status, + &po->np->lock, LOCK_UN); + netfs_nput (po->np); free (po->path); |