Mercurial > packages > rhel6 > postfwd
annotate postfwd-fix-pidfile-permissions.patch @ 1:0c0c93f9123b default tip
Add .hgignore file
author | Guido Berhoerster <guido+packaging@berhoerster.name> |
---|---|
date | Sat, 27 Jul 2013 13:48:15 +0200 |
parents | e03652c59c7d |
children |
rev | line source |
---|---|
0
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
1 Index: Notizen/sbin/postfwd |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
2 =================================================================== |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
3 --- Notizen.orig/sbin/postfwd |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
4 +++ Notizen/sbin/postfwd |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
5 @@ -19,6 +19,7 @@ use POSIX qw(setsid setuid setgid setloc |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
6 use IO::Socket qw(SOCK_STREAM); |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
7 use Net::DNS; |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
8 use Net::Server::Multiplex; |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
9 +use Net::Server::Daemonize qw(create_pid_file); |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
10 use vars qw(@ISA); |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
11 @ISA = qw(Net::Server::Multiplex); |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
12 our($TIMEHIRES); our($STORABLE); |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
13 @@ -2681,7 +2682,6 @@ if ($opt_daemon) { |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
14 group => $net_group, |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
15 chroot => $net_chroot ? $net_chroot : undef, |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
16 setsid => $opt_daemon ? 1 : undef, |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
17 - pid_file => $net_pid ? $net_pid : undef, |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
18 log_level => $opt_perfmon ? 0 : ($opt_verbose + 2), |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
19 log_file => $opt_perfmon ? undef : 'Sys::Syslog', |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
20 syslog_logsock => $syslog_socktype, |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
21 @@ -2736,6 +2736,23 @@ if ($opt_daemon) { |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
22 log_info "$NAME $VERSION ready for input"; |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
23 }; |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
24 |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
25 + # create pid_file ourselves in order to control permissions |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
26 + sub post_configure_hook { |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
27 + my $self = shift; |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
28 + my $prop = $self->{'server'}; |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
29 + |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
30 + $prop->{'pid_file'} = $net_pid ? $net_pid : undef; |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
31 + umask oct('0022'); |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
32 + if ($prop->{'pid_file'}) { |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
33 + if (eval { create_pid_file($prop->{'pid_file'}) }) { |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
34 + $prop->{'pid_file_unlink'} = 1; |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
35 + } else { |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
36 + $self->fatal(my $e = $@); |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
37 + } |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
38 + } |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
39 + umask oct($net_umask); |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
40 + } |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
41 + |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
42 # main loop |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
43 sub mux_input() { |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
44 |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
45 @@ -3637,7 +3654,7 @@ The following arguments will control it' |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
46 Changes real and effective group to <name>. |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
47 |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
48 --umask <mask> |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
49 - Changes the umask for filepermissions (unix domain sockets, pidfiles). |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
50 + Changes the umask for filepermissions (unix domain sockets). |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
51 Attention: This is umask, not chmod - you have to specify the bits that |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
52 should NOT apply. E.g.: umask 077 equals to chmod 700. |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
53 |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
54 Index: Notizen/man/man8/postfwd.8 |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
55 =================================================================== |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
56 --- Notizen.orig/man/man8/postfwd.8 |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
57 +++ Notizen/man/man8/postfwd.8 |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
58 @@ -1198,7 +1198,7 @@ The following arguments will control it' |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
59 .PP |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
60 .Vb 4 |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
61 \& --umask <mask> |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
62 -\& Changes the umask for filepermissions (unix domain sockets, pidfiles). |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
63 +\& Changes the umask for filepermissions (unix domain sockets). |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
64 \& Attention: This is umask, not chmod - you have to specify the bits that |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
65 \& should NOT apply. E.g.: umask 077 equals to chmod 700. |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
66 .Ve |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
67 Index: Notizen/doc/postfwd.html |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
68 =================================================================== |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
69 --- Notizen.orig/doc/postfwd.html |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
70 +++ Notizen/doc/postfwd.html |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
71 @@ -822,7 +822,7 @@ The following arguments will control it' |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
72 Changes real and effective group to <name>.</pre> |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
73 <pre> |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
74 --umask <mask> |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
75 - Changes the umask for filepermissions (unix domain sockets, pidfiles). |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
76 + Changes the umask for filepermissions (unix domain sockets). |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
77 Attention: This is umask, not chmod - you have to specify the bits that |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
78 should NOT apply. E.g.: umask 077 equals to chmod 700.</pre> |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
79 <pre> |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
80 Index: Notizen/doc/postfwd.txt |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
81 =================================================================== |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
82 --- Notizen.orig/doc/postfwd.txt |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
83 +++ Notizen/doc/postfwd.txt |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
84 @@ -876,7 +876,7 @@ DESCRIPTION |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
85 Changes real and effective group to <name>. |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
86 |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
87 --umask <mask> |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
88 - Changes the umask for filepermissions (unix domain sockets, pidfiles). |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
89 + Changes the umask for filepermissions (unix domain sockets). |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
90 Attention: This is umask, not chmod - you have to specify the bits that |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
91 should NOT apply. E.g.: umask 077 equals to chmod 700. |
e03652c59c7d
Initial revision
Guido Berhoerster <guido+packaging@berhoerster.name>
parents:
diff
changeset
|
92 |