From owner-freebsd-emulation Wed Aug 16 0:24:16 2000 Delivered-To: freebsd-emulation@freebsd.org Received: from zork.sf-bay.org (zork.sf-bay.org [192.150.103.29]) by hub.freebsd.org (Postfix) with ESMTP id 56DA237B6EC for ; Wed, 16 Aug 2000 00:24:10 -0700 (PDT) (envelope-from scott@zorch.sf-bay.org) Received: (from uucp@localhost) by zork.sf-bay.org (8.9.3/8.9.3) with UUCP id AAA92297 for freebsd-emulation@freebsd.org; Wed, 16 Aug 2000 00:24:08 -0700 (PDT) (envelope-from scott@zorch.sf-bay.org) Received: (from scott@localhost) by zorba.sf-bay.org (8.9.3/8.8.8) id PAA40427 for freebsd-emulation@freebsd.org; Wed, 16 Aug 2000 15:23:55 +0800 (HKT) (envelope-from scott) Date: Wed, 16 Aug 2000 15:23:55 +0800 (HKT) From: Scott Hazen Mueller Message-Id: <200008160723.PAA40427@zorba.sf-bay.org> To: freebsd-emulation@freebsd.org Subject: Linuxulator, getdents and Citrix Sender: owner-freebsd-emulation@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org I did some research on the archives before I posted this and found only one thing, from December, that appeared relevant. If that fix has already been rolled in, it didn't fix this problem. Environment FreeBSD zorba.sf-bay.org 4.1-STABLE FreeBSD 4.1-STABLE #0: Mon Jul 31 17:34:56 HKT 2000 scott@zorba.sf-bay.org:/export/obj/export/src/sys/ZORBA i386 XFree86-4.0 X11R6.4/XFree86 core distribution citrix_ica-3.0.15 Citrix(R) client for the Microsoft Windows Terminal Server linux_base-6.1 The base set of packages needed in Linux mode linux_lib-2.6.1 These are the libraries necessary for linux compatibility. linuxthreads-2.1.2 POSIX pthreads implementation using rfork to generate kernel rpm-2.5.5 The Red Hat Package Manager System was installed with 'make buildworld; make installworld', so /modules is up-to-date. The problem occurs when running the Citrix ICA (ASP) client for Linux. The client operates correctly for the most part, allowing logins to the WinNT/ Citrix server system, displaying output correctly and the like. However, if I use the facility in the ICA client to export a UNIX directory into the NT environment, it doesn't work correctly. The mapped drive appears properly in the folder listing in Explorer, and if I poke around I find that it's deduced the correct amount of free space. If I create a directory using Folder->New in the Windows NT environment, the directory appears in the UNIX filesystem. What does not work is that I cannot see any of the UNIX files or directories in the exported directory, even the one I've just created. I ran truss against the ICA client. This is the snippet from around the attempt to access the UNIX directory: linux_ioctl(0x3,0x541b,0xbfbff084) = 3 (0x3) linux_ioctl(0x3,0x541b,0xbfbff084) = 3 (0x3) linux_select(0xbfbff668) = 1 (0x1) linux_select(0xbfbff92c) = 1 (0x1) linux_sigprocmask(0x0,0xbfbff934,0xbfbff930) = 3 (0x3) gettimeofday(0xbfbff924,0xbfbff91c) = 2 (0x2) linux_socketcall(0xa,0xbfbff830) = 2 (0x2) linux_newstat("/export/home/scott/",0xbfbff628) = 2 (0x2) linux_statfs(0x810dc88,0xbfbff5e8) = 2 (0x2) linux_open("/etc/mtab",0,0666) ERR#2 'No such file or directory' linux_newstat("/export/home/scott",0xbfbff54c) = 2 (0x2) linux_open("/export/home/scott",0,00) = 3 (0x3) linux_lseek(0x5,0x0,0x0) = 3 (0x3) linux_lseek(0x5,0x0,0x1) = 3 (0x3) linux_getdents(0x5,0x8133768,0x0) = 3 (0x3) close(5) = 1 (0x1) linux_socketcall(0x9,0xbfbff584) = 2 (0x2) linux_sigprocmask(0x2,0xbfbff928,0xbfbff924) = 3 (0x3) As nearly as I can tell, the linux_getdents call is returning a null result instead of a correct set of directory entries. The failed access to /etc/mtab seems irrelevant; I created a dummy mtab in an appropriate (Linux) format with no change in behavior. If this is a configuration problem, I'd certainly appreciate a pointer to the change needed. If this is indeed a bug, I'll be happy to test any patches. Thanks. \scott To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-emulation" in the body of the message