9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
* Re: [9fans] [go-nuts] Re: 9p protocol go implementation
       [not found]   ` <4169f20d-b962-455b-8afe-8aa52db190ab@googlegroups.com>
@ 2014-11-03  9:28     ` Skip Tavakkolian
       [not found]       ` <82348218-84c9-47c7-800f-392261157389@googlegroups.com>
  0 siblings, 1 reply; 2+ messages in thread
From: Skip Tavakkolian @ 2014-11-03  9:28 UTC (permalink / raw)
  To: Chris McGee; +Cc: Fans of the OS Plan 9 from Bell Labs, golang-nuts

[-- Attachment #1: Type: text/plain, Size: 2251 bytes --]

short version: you need libauth in Go (or start the go9p client/server by C
programs that do the auth).

9P facilitates authentication (but doesn't define or dictate the method).
intro(5), auth(2) and factotum(4) will be helpful. basically Tauth is used
to request a fid to negotiate authentication (a.k.a. afid).
Tread's/Twrite's to afid are proxy-delivered to the factotums
(authentication agents) of the sever and of the client by each side. once
server's factotum is convinced, the server is granted the system privilege
to change its process id to the authenticated user.  the client attaches
(Tattach) to the server's namespace by providing the afid in addition to
other parameters. tools like 'ramfs  -D' and aux/9pcon are very handy for
watching 9P in action.

i'm copying to 9fans; it might be a better place to continue.


On Sun, Nov 2, 2014 at 6:27 PM, <newton688@gmail.com> wrote:

> I see that go9p supports authentication. Assuming the client and server
> are both plan9 (even the same system), how does one hook up the OS's
> authentication?
>
> Chris
>
>
> On Monday, March 21, 2011 10:16:16 PM UTC-4, peterGo wrote:
>>
>> Mauricio,
>>
>> go9p - Package to write 9P clients and servers in Go
>> http://code.google.com/p/go9p/
>>
>> Peter
>>
>> On Mar 21, 9:57 pm, Maurício CA <mauricio.antu...@gmail.com> wrote:
>> > Hi, all,
>> >
>> > I see at page below that there exists go9p, "A 9P library in the Go
>> > programming language, by Andrey Mirtchovski and Latchesar
>> > Ionkov. Now part of the official Go distribution."
>> >
>> >    http://9p.cat-v.org/implementations
>> >
>> > I can't find any implementation of 9p at this page, though, which, I
>> > believe, is the official list of current standard go packages:
>> >
>> >    http://golang.org/pkg
>> >
>> > Is there really a 9p implementation in the official go distribution?
>> >
>> > Thanks,
>> >
>> > Maurício
>
>  --
> You received this message because you are subscribed to the Google Groups
> "golang-nuts" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to golang-nuts+unsubscribe@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

[-- Attachment #2: Type: text/html, Size: 3335 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [9fans] [go-nuts] Re: 9p protocol go implementation
       [not found]       ` <82348218-84c9-47c7-800f-392261157389@googlegroups.com>
@ 2014-11-05  1:13         ` Skip Tavakkolian
  0 siblings, 0 replies; 2+ messages in thread
From: Skip Tavakkolian @ 2014-11-05  1:13 UTC (permalink / raw)
  To: Chris McGee; +Cc: Fans of the OS Plan 9 from Bell Labs, golang-nuts

[-- Attachment #1: Type: text/plain, Size: 3681 bytes --]

where would PostMountSrv reside? it isn't a syscall.

it is not difficult to do by hand; this version of go9p's timefs example
posts itself to /srv (plus some code to fake a few unix'isms on Plan
9). there is no authentication; permissions on the /srv file determine if a
user can mount it:

https://github.com/9nut/plan9/tree/master/go9p_timefs

a package that wraps the factotum-to-app rpc protocol (like libauth) would
be useful.

-Skip

On Mon, Nov 3, 2014 at 7:04 PM, <newton688@gmail.com> wrote:

> Thanks, I think I'll have to do a bit more reading to understand this.
> I'll check out ramfs and 9pcon.
>
> Is this simpler if written in C using "postmountsrv" with a mount point?
> I'm assuming that it doesn't require a tcp port and explicit authentication
> handling using libauth on both ends.
>
> If so, then I wonder why postmountsrv is not exposed via the Go 9P
> libraries?
>
> Chris
>
> On Monday, November 3, 2014 4:29:10 AM UTC-5, Skip wrote:
>>
>> short version: you need libauth in Go (or start the go9p client/server by
>> C programs that do the auth).
>>
>> 9P facilitates authentication (but doesn't define or dictate the method).
>> intro(5), auth(2) and factotum(4) will be helpful. basically Tauth is used
>> to request a fid to negotiate authentication (a.k.a. afid).
>> Tread's/Twrite's to afid are proxy-delivered to the factotums
>> (authentication agents) of the sever and of the client by each side. once
>> server's factotum is convinced, the server is granted the system privilege
>> to change its process id to the authenticated user.  the client attaches
>> (Tattach) to the server's namespace by providing the afid in addition to
>> other parameters. tools like 'ramfs  -D' and aux/9pcon are very handy for
>> watching 9P in action.
>>
>> i'm copying to 9fans; it might be a better place to continue.
>>
>>
>> On Sun, Nov 2, 2014 at 6:27 PM, <newt...@gmail.com> wrote:
>>
>>> I see that go9p supports authentication. Assuming the client and server
>>> are both plan9 (even the same system), how does one hook up the OS's
>>> authentication?
>>>
>>> Chris
>>>
>>>
>>> On Monday, March 21, 2011 10:16:16 PM UTC-4, peterGo wrote:
>>>>
>>>> Mauricio,
>>>>
>>>> go9p - Package to write 9P clients and servers in Go
>>>> http://code.google.com/p/go9p/
>>>>
>>>> Peter
>>>>
>>>> On Mar 21, 9:57 pm, Maurício CA <mauricio.antu...@gmail.com> wrote:
>>>> > Hi, all,
>>>> >
>>>> > I see at page below that there exists go9p, "A 9P library in the Go
>>>> > programming language, by Andrey Mirtchovski and Latchesar
>>>> > Ionkov. Now part of the official Go distribution."
>>>> >
>>>> >    http://9p.cat-v.org/implementations
>>>> >
>>>> > I can't find any implementation of 9p at this page, though, which, I
>>>> > believe, is the official list of current standard go packages:
>>>> >
>>>> >    http://golang.org/pkg
>>>> >
>>>> > Is there really a 9p implementation in the official go distribution?
>>>> >
>>>> > Thanks,
>>>> >
>>>> > Maurício
>>>
>>>  --
>>> You received this message because you are subscribed to the Google
>>> Groups "golang-nuts" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to golang-nuts...@googlegroups.com.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>  --
> You received this message because you are subscribed to the Google Groups
> "golang-nuts" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to golang-nuts+unsubscribe@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

[-- Attachment #2: Type: text/html, Size: 5706 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2014-11-05  1:13 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <cf5eab88-0716-4cfb-8731-54dba32f0344@m13g2000yqb.googlegroups.com>
     [not found] ` <89ec9d50-9736-4d93-985f-bf32e6fd9247@n2g2000prj.googlegroups.com>
     [not found]   ` <4169f20d-b962-455b-8afe-8aa52db190ab@googlegroups.com>
2014-11-03  9:28     ` [9fans] [go-nuts] Re: 9p protocol go implementation Skip Tavakkolian
     [not found]       ` <82348218-84c9-47c7-800f-392261157389@googlegroups.com>
2014-11-05  1:13         ` Skip Tavakkolian

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).