Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
pve-manager
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
pve-manager
Commits
64a5c804
Commit
64a5c804
authored
Jan 02, 2015
by
Dietmar Maurer
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
use setuid/setgid feature from PVE::Daemon
parent
0670de70
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
4 additions
and
21 deletions
+4
-21
pveproxy
bin/pveproxy
+2
-11
spiceproxy
bin/spiceproxy
+2
-10
No files found.
bin/pveproxy
View file @
64a5c804
...
...
@@ -6,7 +6,6 @@ delete @ENV{qw(IFS CDPATH ENV BASH_ENV)};
use
strict
;
use
warnings
;
use
English
;
use
PVE
::
SafeSyslog
;
use
PVE
::
Daemon
;
...
...
@@ -44,21 +43,13 @@ my %daemon_options = (
restart_on_error
=>
5
,
stop_wait_time
=>
15
,
leave_children_open_on_reload
=>
1
,
setuid
=>
'www-data'
,
setgid
=>
'www-data'
,
run_dir
=>
'/var/run/pveproxy'
,
);
my
$
daemon
=
__PACKAGE__
->
new
(
'pveproxy'
,
$
cmdline
,
%
daemon_options
);
#
run
as
www
-
data
my
$
gid
=
getgrnam
(
'www-data'
)
||
die
"getgrnam failed - $!
\n
"
;
POSIX
::
setgid
($
gid
)
||
die
"setgid $gid failed - $!
\n
"
;
$
EGID
=
"$gid $gid"
;
#
this
calls
setgroups
my
$
uid
=
getpwnam
(
'www-data'
)
||
die
"getpwnam failed - $!
\n
"
;
POSIX
::
setuid
($
uid
)
||
die
"setuid $uid failed - $!
\n
"
;
#
just
to
be
sure
die
"detected strange uid/gid
\n
"
if
!($UID == $uid && $EUID == $uid && $GID eq "$gid $gid" && $EGID eq "$gid $gid");
sub
add_dirs
{
my
($
result_hash
,
$
alias
,
$
subdir
)
=
@
_
;
...
...
bin/spiceproxy
View file @
64a5c804
...
...
@@ -10,7 +10,6 @@ delete @ENV{qw(IFS CDPATH ENV BASH_ENV)};
use
strict
;
use
warnings
;
use
English
;
use
PVE::
SafeSyslog
;
use
PVE::
Daemon
;
...
...
@@ -36,20 +35,13 @@ my %daemon_options = (
restart_on_error
=>
5
,
stop_wait_time
=>
15
,
leave_children_open_on_reload
=>
1
,
setuid
=>
'
www-data
',
setgid
=>
'
www-data
',
run_dir
=>
'
/var/run/pveproxy
',
);
my
$daemon
=
__PACKAGE__
->
new
('
spiceproxy
',
$cmdline
,
%
daemon_options
);
my
$gid
=
getgrnam
('
www-data
')
||
die
"
getgrnam failed - $!
\n
";
POSIX::
setgid
(
$gid
)
||
die
"
setgid
$gid
failed - $!
\n
";
$EGID
=
"
$gid
$gid
";
# this calls setgroups
my
$uid
=
getpwnam
('
www-data
')
||
die
"
getpwnam failed - $!
\n
";
POSIX::
setuid
(
$uid
)
||
die
"
setuid
$uid
failed - $!
\n
";
# just to be sure
die
"
detected strange uid/gid
\n
"
if
!
(
$UID
==
$uid
&&
$EUID
==
$uid
&&
$GID
eq
"
$gid
$gid
"
&&
$EGID
eq
"
$gid
$gid
");
sub
init
{
my
(
$self
)
=
@_
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment