9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: root81@gmail.com (Sergey Kornilovich)
Subject: [9fans] Fwd:  cifsd
Date: Thu, 14 Apr 2011 15:52:59 +0400	[thread overview]
Message-ID: <BANLkTi=0XxR4=+apiwFX2VwJBrAPiazxsw@mail.gmail.com> (raw)
In-Reply-To: <BANLkTikGY+Q6Xp94LcGEAq0o=NhjsKRFTg@mail.gmail.com>

Thanks, now everything works fine.

But if you want that windows clients can connect any vacfile (in /lib/vac or
$home/lib/vac), you must modify the file /bin/9fs.

This is: vacfs -m /n/`{basename $1.vac} `{cat $score}
To this: vacfs -p -m /n/`{basename $1} `{cat $ score}
(-p Disables permission checking)
If anyone knows a more elegant way to do it, I'll be glad to hear.



14 ?????? 2011 ?. 1:06 ???????????? <cinap_lenrek at gmx.de> ???????:

> with further thought... i removed the pipe code and now redirect
> /sys/log/cifsd to stdout/stderr of /bin/9fs and just do a wait() call
> to see if it terminates. i think this is the cleanest thing todo and doesnt
> leak any filedescriptors into 9fs...
>
> the changed code in question is in share.c of the cifsd.tgz tarball.
>
> --
> cinap
>
>
> ---------- ???????????? ????????? ----------
> From: Sergey Kornilovich <root81 at gmail.com>
> To: cinap_lenrek at gmx.de
> Date: Wed, 13 Apr 2011 23:54:32 +0400
>
> Subject: Re: [9fans] cifsd
>
> cat /bin/service/tcp445
> #!/bin/rc
> exec /bin/ip/cifsd -t -d -f /sys/log/cifsd.debug
>
> ps|grep cifsd
> bootes 374 0:00 0:00 212K Pread cifsd
> bootes 908 0:00 0:00 212K Pread cifsd
> bootes 1391 0:00 0:00 212K Pread cifsd
> none 2332 0:00 0:00 212K Pread cifsd
> none 2527 0:00 0:00 212K Pread cifsd
>
> tail -f /sys/log/cifsd.debug
> started [2527]
> [72] SMB_COM_NEGOTIATE
> [0] PC NETWORK PROGRAM 1.0
> [1] LANMAN1.0
> [2] Windows for Workgroups 3.1a
> [3] LM1.2X002
> [4] LANMAN2.1
> [5] NT LM 0.12
> [6] SMB 2.002
> [7] SMB 2.???
> respond: err=0
>
> [73] SMB_COM_SESSION_SETUP_ANX
> bs=8000 cap=d4 user=KROK dom=KROK os= lanman=
> auth successfull
> [75] SMB_COM_TREE_CONNECT_ANDX
> mapshare \\192.168.1.200\IPC$ -> IPC IPC$ /dev/null
> [ff] SMB_COM_NO_ANDX_COMMAND
> respond: err=0
>
> [73] SMB_COM_SESSION_SETUP_ANX
> bs=8000 cap=d4 user=KROK dom=KROK os= lanman=
> [75] SMB_COM_TREE_CONNECT_ANDX
> mapshare \\192.168.1.200\VAC -> A: vac /n/vac
>
>
> 13 ?????? 2011 ?. 23:24 ???????????? <cinap_lenrek at gmx.de> ???????:
>
>> check with ps that there are no broken cifsd processes for
>> bootes... if there are, run acid <pid> and type lstk() to get
>> a stacktrace...
>>
>> if this is not the case...  lets enable more debugging to figure out
>> whats going on...
>>
>> add -d -f /sys/log/cifsd.debug option to /bin/service/tcp445 command line.
>>
>> create a world writable append only file in /sys/log
>>
>> touch /sys/log/cifsd.debug
>> chmod a+wa /sys/log/cifsd.debug
>>
>> --
>> cinap
>>
>>
>> ---------- ???????????? ????????? ----------
>> From: Sergey Kornilovich <root81 at gmail.com>
>> To: cinap_lenrek at gmx.de
>> Date: Wed, 13 Apr 2011 23:13:22 +0400
>> Subject: Re: [9fans] cifsd
>> You are right.
>> To test, I changed the file 9fs adding:
>>
>> case vac
>> vacfs /lib/vac/1.vac
>> but
>> C: \> net use Y: \\192.168.1.200\vac
>> pause for 1 minute
>> System error 64 has occurred.
>>
>> The specified network name is no longer available.
>> I run cifsd -t
>> /sys/log/cifsd
>> server Apr 13 22:43:45 (<nil>\<nil>) started [908]
>> server Apr 13 22:43:45 (<nil>\bootes) auth successfull
>> server Apr 13 22:43:45 (<nil>\bootes) mapshare \\192.168.1.200\IPC$ -> IPC
>> IPC$ /dev/null
>> server Apr 13 22:43:45 (<nil>\bootes) mapshare \\192.168.1.200\VAC -> A:
>> vac /n/vac
>>
>>
>> 2011/4/13 <cinap_lenrek at gmx.de>
>>
>>> cifsd expetcts that the 9fs $foo command mounts the filesystem to
>>> /n/$foo where $foo is derived from the smb share name by turning all
>>> upper case characters to lower case.
>>>
>>> so if 9fs vac.1 mounts to /n/1 instead of /n/vac.1 you will get a
>>> empty directory in cifsd because it will look in /n/vac.1.
>>>
>>> but this does not explain the error 64...
>>>
>>> do you logon to the cifsd server with the right plan9 user name?  have
>>> you tried running the 9fs command as the same user?
>>>
>>> do you see anything in /sys/log/cifsd?
>>>
>>> --
>>> cinap
>>>
>>>
>>> ---------- ???????????? ????????? ----------
>>> From: Sergey Kornilovich <root81 at gmail.com>
>>> To: Fans of the OS Plan 9 from Bell Labs <9fans at 9fans.net>
>>> Date: Wed, 13 Apr 2011 13:54:34 +0400
>>> Subject: Re: [9fans] cifsd
>>>
>>> Trying to connect the vac file through cifsd.
>>> net use Y: \ \ 192.168.0.190 \ 1.vac (/ lib/vac/1.vac exist and "9fs
>>> 1.vac" command mount 1.vac in / n / 1)
>>> But on the windows client receives:
>>> C: \> net use Y: \ \ 192.168.0.190 \ 1.vac
>>> pause for 1 minute
>>> System error 64 has occurred.
>>>
>>> The specified network name is no longer available.
>>>
>>> Show you how to do it right?
>>>
>>> P.S. Local connection works fine.
>>> C: \> net use Y: \ \ 192.168.0.190 \ local
>>> The command completed successfully.
>>>
>>> 2010/9/22 David Leimbach <leimy2k at gmail.com>
>>>
>>>>
>>>>
>>>> On Tue, Sep 21, 2010 at 5:35 PM, Akshat <akumar at mail.nanosouffle.net>wrote:
>>>>
>>>>> Just for the official record: cifsd works perfectly fine with Windows
>>>>> 7.
>>>>>
>>>>> Cinap's approach to the problem of packet-based protocols is elegant,
>>>>> efficient, and through the invent of printf-alike functions, fits well with
>>>>> the Plan 9 programming suite/style.
>>>>>
>>>>
>>>>  Looks like a LinkedIn recommendation!  I would use this but I've been
>>>> happily windows free for years now.  Windows 7 seems to be drawing people
>>>> back in, but I'm not sure I want to make the leap yet.  Depends if Apple
>>>> turns Mac OS X into the iOS developer platform only or not I suppose.
>>>>
>>>> Dave
>>>>
>>>>
>>>>>
>>>>> Well done.
>>>>> ak
>>>>>
>>>>> On Sep 20, 2010, at 20:34, cinap_lenrek at gmx.de wrote:
>>>>>
>>>>>  after doing some patching on aquarela, wrote a cifs/smb server
>>>>>> from scratch and got it down to 3350 lines of code.
>>>>>>
>>>>>> it uses binary regular expressions to unpack and pack the
>>>>>> various nested sub-structures in the packets.
>>>>>>
>>>>>> /n/sources/cinap_lenrek/cifsd.tgz
>>>>>> http://9hal.ath.cx/usr/cinap_lenrek/cifsd.tgz
>>>>>>
>>>>>> features include:
>>>>>>
>>>>>> run from listen(8) as none, so more secure.
>>>>>>
>>>>>> uses syslog() for informational logging (auth/share
>>>>>> accesses/errors/warnings).  debug tracing can be done with a separate
>>>>>> debug trace file.
>>>>>>
>>>>>> open/read/write/close/rename/delete files and directories.
>>>>>>
>>>>>> fixed auth so it doesnt fail half the time. the trick was to delay the
>>>>>> auth failure to the TREE_CONNECT_ANDX, otherwise windows
>>>>>> will try over and over again with wrong password and username
>>>>>> combinations.
>>>>>>
>>>>>> moving files/directories works by returning a special error code to
>>>>>> instruct the client to do a recursive copy.
>>>>>>
>>>>>> impements/pretends enougth IPC$/rap to get the local share listed.
>>>>>>
>>>>>> not implemented:
>>>>>>
>>>>>> oplocks
>>>>>> wildcard matching (will do (again))
>>>>>> netbios nameservice
>>>>>> named pipes/mailslots
>>>>>> setting file attributes
>>>>>> NT_TRANSACT / acls
>>>>>> anything i'v not seen while testing with w2k and wxp
>>>>>>
>>>>>> i'm interested in feedback. expecially tests with vista or w7.
>>>>>>
>>>>>> --
>>>>>> cinap
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>>
>>
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.9fans.net/private/9fans/attachments/20110414/b2291567/attachment.html>


      parent reply	other threads:[~2011-04-14 11:52 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-09-21  3:34 [9fans] cifsd cinap_lenrek
2010-09-22  0:35 ` Akshat
2010-09-22 15:05   ` David Leimbach
2011-04-13  9:54     ` Sergey Kornilovich
2011-04-13 13:39       ` cinap_lenrek
     [not found]       ` <127c3a0c5e2e64da53701bf15949aa08@gmx.de>
2011-04-13 19:13         ` Sergey Kornilovich
     [not found]           ` <8a63b9e03865e2e31f270437530f46a8@gmx.de>
2011-04-13 19:54             ` Sergey Kornilovich
     [not found]               ` <44c6348b3cbf2ea7573e33e6013a21c0@gmx.de>
     [not found]                 ` <BANLkTikGY+Q6Xp94LcGEAq0o=NhjsKRFTg@mail.gmail.com>
2011-04-14 11:52                   ` Sergey Kornilovich [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='BANLkTi=0XxR4=+apiwFX2VwJBrAPiazxsw@mail.gmail.com' \
    --to=root81@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).