From 0603e84c9af78b5e6d76db66d45934819e9f6d3b Mon Sep 17 00:00:00 2001 From: Joe Rayhawk Date: Thu, 30 Dec 2010 22:40:24 -0800 Subject: Revert "Some minor reorg." This makes newuser.cgi usable again. This reverts commit 3e9efc02288fd4cd386f825adf9017d6117e6383. --- pinyweb/Makefile | 4 ++-- pinyweb/cgi-bin/newrepo.cgi | 29 ----------------------------- pinyweb/cgi-bin/newuser.cgi | 29 ----------------------------- pinyweb/cgi-bin/piny-newuser.cgi | 29 +++++++++++++++++++++++++++++ pinyweb/cgi-bin/piny/newrepo.cgi | 29 +++++++++++++++++++++++++++++ 5 files changed, 60 insertions(+), 60 deletions(-) delete mode 100755 pinyweb/cgi-bin/newrepo.cgi delete mode 100755 pinyweb/cgi-bin/newuser.cgi create mode 100644 pinyweb/cgi-bin/piny-newuser.cgi create mode 100755 pinyweb/cgi-bin/piny/newrepo.cgi diff --git a/pinyweb/Makefile b/pinyweb/Makefile index bf6e865..622f24c 100644 --- a/pinyweb/Makefile +++ b/pinyweb/Makefile @@ -2,8 +2,8 @@ build: $(MAKE) -C suid install: - install -o root -g root -m 755 -d $(DESTDIR)/usr/lib/cgi-bin/piny $(DESTDIR)/usr/sbin - install -o root -g root -m 755 cgi-bin/* $(DESTDIR)/usr/lib/cgi-bin/piny + install -o root -g root -m 755 -d $(DESTDIR)/usr/lib/cgi-bin $(DESTDIR)/usr/sbin + install -o root -g root -m 755 cgi-bin/* $(DESTDIR)/usr/lib/cgi-bin install -o root -g www-data -m 4754 suid/piny-suid $(DESTDIR)/usr/sbin clean: diff --git a/pinyweb/cgi-bin/newrepo.cgi b/pinyweb/cgi-bin/newrepo.cgi deleted file mode 100755 index 450fa82..0000000 --- a/pinyweb/cgi-bin/newrepo.cgi +++ /dev/null @@ -1,29 +0,0 @@ -#!/usr/bin/perl -$| = 1; - -use warnings; - -use CGI; - -use IPC::Open2; - -$q = CGI->new; - -print( "Content-type: text/plain\n\n"); - -if( $q->param('n') && $q->param('d') ) { - unless( open2( OUT, IN, '/usr/sbin/piny-suid', $ENV{'REMOTE_USER'}, 'newrepo', $q->param('n') ) ) { - print 'could not execute newrepo'; - die; - }; - # make things flushier - select( (select(IN), $| = 1)[0] ); - select( (select(OUT), $| = 1)[0] ); - print( IN $q->param('d') . "\n" ); - close( IN ); - while( ) { - print; - }; -} else { - print 'Missing parameters.'; -}; diff --git a/pinyweb/cgi-bin/newuser.cgi b/pinyweb/cgi-bin/newuser.cgi deleted file mode 100755 index 002d2be..0000000 --- a/pinyweb/cgi-bin/newuser.cgi +++ /dev/null @@ -1,29 +0,0 @@ -#!/usr/bin/perl -$| = 1; - -use warnings; - -use CGI; - -use IPC::Open2; - -$q = CGI->new; - -print( "Content-type: text/plain\n\n" ); - -if( $q->param('n') && $q->param('a') && $q->param('p') ) { - unless( open2( OUT, IN, '/usr/bin/sudo', '/usr/sbin/newuser', '--batch', $q->param('a'), $q->param('n') ) ) { - print 'could not execute newrepo'; - die; - }; - # make things flushier - select((select(IN), $| = 1)[0]); - select((select(OUT), $| = 1)[0]); - print( IN $q->param('p') . "\n" ); - close( IN ); - while( ) { - print; - }; -} else { - print 'Missing parameters.'; -}; diff --git a/pinyweb/cgi-bin/piny-newuser.cgi b/pinyweb/cgi-bin/piny-newuser.cgi new file mode 100644 index 0000000..002d2be --- /dev/null +++ b/pinyweb/cgi-bin/piny-newuser.cgi @@ -0,0 +1,29 @@ +#!/usr/bin/perl +$| = 1; + +use warnings; + +use CGI; + +use IPC::Open2; + +$q = CGI->new; + +print( "Content-type: text/plain\n\n" ); + +if( $q->param('n') && $q->param('a') && $q->param('p') ) { + unless( open2( OUT, IN, '/usr/bin/sudo', '/usr/sbin/newuser', '--batch', $q->param('a'), $q->param('n') ) ) { + print 'could not execute newrepo'; + die; + }; + # make things flushier + select((select(IN), $| = 1)[0]); + select((select(OUT), $| = 1)[0]); + print( IN $q->param('p') . "\n" ); + close( IN ); + while( ) { + print; + }; +} else { + print 'Missing parameters.'; +}; diff --git a/pinyweb/cgi-bin/piny/newrepo.cgi b/pinyweb/cgi-bin/piny/newrepo.cgi new file mode 100755 index 0000000..450fa82 --- /dev/null +++ b/pinyweb/cgi-bin/piny/newrepo.cgi @@ -0,0 +1,29 @@ +#!/usr/bin/perl +$| = 1; + +use warnings; + +use CGI; + +use IPC::Open2; + +$q = CGI->new; + +print( "Content-type: text/plain\n\n"); + +if( $q->param('n') && $q->param('d') ) { + unless( open2( OUT, IN, '/usr/sbin/piny-suid', $ENV{'REMOTE_USER'}, 'newrepo', $q->param('n') ) ) { + print 'could not execute newrepo'; + die; + }; + # make things flushier + select( (select(IN), $| = 1)[0] ); + select( (select(OUT), $| = 1)[0] ); + print( IN $q->param('d') . "\n" ); + close( IN ); + while( ) { + print; + }; +} else { + print 'Missing parameters.'; +}; -- cgit v1.2.3