[OpenAFS] weird behaviour of pts source
Marcus Watts
mdw@spam.ifs.umich.edu
Sat, 11 Aug 2007 02:23:59 -0400
Jason Edgecombe <jason@rampaginggeek.com> had posted:
> Christopher D. Clausen wrote:
> > Jason Edgecombe <jason@rampaginggeek.com> wrote:
> >
> >> Hi,
> >>
> >> I compiled 1.4.4 on Mac OS X ppc Tiger with the supergroups option. I
> >> seem to be getting weird behaviour from pts source. It seems to be
> >> acting just like pts interactive. Am I doing something wrong?
> >>
> >> Here is a log:
> >> ### I logged into afs as a regular user.
> >> %cat /tmp/commands.txt
> >> examine admin
> >> quit
> >> %./pts source -file /tmp/commands.txt
> >> pts> quit
> >> %./pts in < /tmp/commands.txt
> >> Name: admin, id: 1, owner: system:administrators, creator: anonymous,
> >> membership: 2, flags: S----, group quota: 20.
> >> %
> >>
> >> Can someone shed some light on this? Does my ptserver have to be
> >> compiled with supergroups in order for pts source to work? I stumbled
> >> over this while trying out the command so that I could write the man
> >> page for it.
"pts in < command-file" is supposed to work just as in your
example.
"pts source -file /tmp/commands.txt" is broken. source is intended
to be a way to pull in files to supplment an interactive front-end, so
is supposed to be used something like this:
lancashire$ echo 'examine admin' > /tmp/commands.txt
lancashire$ pts in
pts> source /tmp/commands.txt
Name: admin, id: 2, owner: system:administrators, creator: bhoward,
membership: 21, flags: SOM--, group quota: unlimited.
pts> quit
lancashire$
Using "pts source" ought to work. I'm pretty sure I have a fixed
version somewhere, which I'll try to locate this weekend.
> >>
> >
> > I can confirm this behavior on 1.4.2 and 1.4.4 on i386_linux26. My
> > ptservers have supergroups enabled.
> >
> > The command doesn't seem to exist in the Windows pts binaries.
Windws is built from some of the same source, but as best I can
determine, doesn't have real configuration support for options such
as "supergroups".
> >
> > <<CDC
> >
> >
> On a similar note, does pts interactive, sleep, quit and source need to
> be in a supergroups ifdef?
>
>
> I'm looking in src/ptserver/pts.c
>
> #if defined(SUPERGROUPS)
>
> ts = cmd_CreateSyntax("interactive", Interactive, 0,
> "enter interactive mode");
> add_std_args(ts);
> cmd_CreateAlias(ts, "in");
>
>
>
> interactive modes seems useful even without supergroups, what gives?
It's ifdef'd SUPERGROUPS for mainly historical reasons. It shouldn't
be ifdef'd at all.
>
> Sincerely,
> Jason
-Marcus Watts