[tech] [ucc] New Door/Dispense Server
Bob Adamson
bob at ucc.gu.uwa.edu.au
Tue Apr 12 22:25:44 WST 2011
On Tue, 12 Apr 2011, David Adam wrote:
> On Tue, 12 Apr 2011, Mark Tearle wrote:
> > Found a feature in the new merlo arrangement for users dispensing from the
> > snack machine. Currently it requires the users shell to exist on merlo. As
> > I'm counter-revolutionary tcsh
> > user mine did not until moments ago.
> >
> > This is probably worth fixing so we don't depend on users shells and also so
> > users can't do anything nasty.
> >
> > Mark
>
> Mr Tearle,
>
> $ cvs annotate VendServer.py | grep su
>
> Annotations for VendServer.py
> ***************
> 1.77 (mtearle 09-Apr-05): # should use sudo here
> 1.77 (mtearle 09-Apr-05): ret = os.system('su - "%s" -c "dispense door"'%vstatus.username)
> 1.77 (mtearle 09-Apr-05): if ((os.system('su - "%s" -c "dispense %s"'%(vstatus.username, vstatus.cur_selection[0])) >> 8) != 0):
>
> I'm not hugely convinced that users can do anything nasty with this but I
> agree that it should probably be replaced.
>
> In the short term, perhaps it could just be replaced with
>
> ret = subprocess.call(('dispense', '-u', vstatus.username, 'door'))
> and something similar for the second call.
>
> although that would change the logs from
> odispense2: dispense 'Open Door' (door:0) for zanchey by zanchey
> to
> odispense2: dispense 'Open Door' (door:0) for zanchey by root
>
> In the long term I wonder if it is worth skipping the client binary
> altogether and just talking over the network to the dispense server; I was
> thinking about writing a Python library to do just that anyway as I abhor
> C.
>
> (This message should not be taken as an acceptance of the maintainership
> of the snack machine server code.)
>
> David Adam
> UCC Wheel Member
> zanchey@
>
Couldn't we just set the shell explicitly when we su to the user, by using
--shell=/bin/sh ?
Bob Adamson
UCC President
|"Bureaucracy is a challenge to the be conquered with a righteous |
|attitude, an intolerance for stupidity, and a bulldozer when necessary" |
| ---Peter's Laws |
More information about the tech
mailing list