]>
Commit | Line | Data |
---|---|---|
8e08ea27 JR |
1 | # proces name |
2 | PROCESS_NAME=xinetd | |
3 | ||
4 | # inet server config | |
1b911a05 | 5 | CONFIG_FILE=/etc/xinetd.conf |
8e08ea27 JR |
6 | CONFIG_FILE_UMASK=027 |
7 | ||
8 | # inet server daemon executable file name | |
3b9d4bb1 AM |
9 | . /etc/rc.d/init.d/functions |
10 | . /etc/sysconfig/network | |
21726c55 | 11 | |
eeef9cdf | 12 | INETDAEMON="/usr/sbin/xinetd" |
8e08ea27 JR |
13 | |
14 | # addytional inet server daemon argumments | |
15 | INETDAEMON_ARGS= | |
16 | ||
9e9a4870 | 17 | PREAMBLE="# This file is autogenerated from /etc/sysconfig/rc-inetd!" |
8e08ea27 JR |
18 | |
19 | parse_one_service() | |
20 | { | |
21 | ERROR_CODE=0 | |
22 | ||
23 | [ "${SERVICE_NAME:-not}" = "not" ] && ERROR_CODE=11 | |
24 | [ "${PROTOCOL:-not}" = "not" ] && ERROR_CODE=12 | |
5622cecc JB |
25 | if [ "${RPCNAME:-not}" = "not" ]; then |
26 | [ "${PORT:-not}" = "not" ] && ERROR_CODE=13 | |
27 | fi | |
8e08ea27 JR |
28 | [ "${USER:-not}" = "not" ] && ERROR_CODE=14 |
29 | [ "${SERVER:-not}" = "not" ] && ERROR_CODE=15 | |
30 | [ "${FLAGS:-not}" = "not" ] && ERROR_CODE=16 | |
31 | [ "${DAEMON:-not}" = "not" ] && ERROR_CODE=17 | |
32 | [ "${SOCK_TYPE:-not}" = "not" ] && ERROR_CODE=18 | |
33 | ||
aa5a8982 | 34 | if [ ! $ERROR_CODE -eq 0 ]; then |
8e08ea27 JR |
35 | echo "ERROR: Parse error." |
36 | case "$ERROR_CODE" in | |
37 | 11) | |
38 | echo "SERVICE_NAME not defined in /etc/sysconfig/rc-inetd/$CURRENT_SERVICE." | |
39 | ;; | |
40 | 12) | |
41 | echo "PROTOCOL not defined in /etc/sysconfig/rc-inetd/$CURRENT_SERVICE." | |
42 | ;; | |
43 | 13) | |
44 | echo "PORT not defined in /etc/sysconfig/rc-inetd/$CURRENT_SERVICE." | |
45 | ;; | |
46 | 14) | |
47 | echo "USER not defined in /etc/sysconfig/rc-inetd/$CURRENT_SERVICE." | |
48 | ;; | |
49 | 15) | |
50 | echo "SERVER not defined in /etc/sysconfig/rc-inetd/$CURRENT_SERVICE." | |
51 | ;; | |
52 | 16) | |
53 | echo "FLAGS not defined in /etc/sysconfig/rc-inetd/$CURRENT_SERVICE." | |
54 | ;; | |
55 | 17) | |
56 | echo "DAEMON not defined in /etc/sysconfig/rc-inetd/$CURRENT_SERVICE." | |
57 | ;; | |
58 | 18) | |
59 | echo "SOCK_TYPE not defined in /etc/sysconfig/rc-inetd/$CURRENT_SERVICE." | |
60 | ;; | |
61 | esac | |
62 | return $ERROR_CODE | |
63 | fi | |
64 | ||
54f94173 | 65 | echo "service $SERVICE_NAME" |
66 | echo "{" | |
8e08ea27 | 67 | if [ "${SERVICE_TYPE:-n}" != "n" ]; then |
aa5a8982 TP |
68 | for i in $SERVICE_TYPE; do |
69 | if [ "$i" = "RPC" ]; then | |
8e08ea27 JR |
70 | [ "${RPCVERSION:-n}" = "n" ] || echo " rpc_version = $RPCVERSION" |
71 | [ "${RPCNUMBER:-n}" = "n" ] || echo " rpc_number = $RPCNUMBER" | |
72 | fi | |
73 | XSERVICE_TYPE="$XSERVICE_TYPE $i" | |
74 | done | |
75 | fi | |
76 | [ "${XSERVICE_TYPE:-n}" = "n" ] || echo " type =$XSERVICE_TYPE" | |
77 | echo " socket_type = $SOCK_TYPE" | |
78 | echo " protocol = $PROTOCOL" | |
5622cecc JB |
79 | if [ "${PORT:-not}" != "not" ]; then |
80 | echo " port = $PORT" | |
81 | fi | |
8e08ea27 JR |
82 | echo " user = $USER" |
83 | [ "${GROUP:-n}" = "n" ] || echo " group = $GROUP" | |
aa5a8982 | 84 | if [ "$SERVER" = "tcpd" ]; then |
fb534866 ER |
85 | SERVER="$DAEMON" |
86 | else | |
87 | DAEMONARGS="$DAEMON $DAEMONARGS" | |
88 | XFLAGS="$XFLAGS NAMEINARGS " | |
89 | fi | |
54f94173 | 90 | echo " server = $SERVER" |
fbff9a54 | 91 | |
8e08ea27 JR |
92 | [ "${DAEMONARGS:-n}" = "n" ] || echo " server_args = $DAEMONARGS" |
93 | ||
3f715919 ER |
94 | for i in $FLAGS; do |
95 | case "$i" in | |
96 | wait) | |
8e08ea27 | 97 | echo " wait = yes" |
3f715919 ER |
98 | ;; |
99 | nowait) | |
8e08ea27 JR |
100 | echo " wait = no" |
101 | [ "${MAX_CONNECTIONS:-n}" = "n" ] || echo " instances = $MAX_CONNECTIONS" | |
102 | [ "${MAX_CONNECTIONS_PER_SOURCE:-n}" = "n" ] || echo " per_source = $MAX_CONNECTIONS_PER_SOURCE" | |
aa5a8982 | 103 | ;; |
3f715919 | 104 | *) |
8e08ea27 | 105 | XFLAGS="$XFLAGS $i" |
3f715919 ER |
106 | ;; |
107 | esac | |
8e08ea27 | 108 | done |
0c43fb48 JR |
109 | if [ "${FAMILY:-not}" != "not" ]; then |
110 | XFLAGS="$XFLAGS $FAMILY" | |
111 | fi | |
8e08ea27 JR |
112 | [ "${XFLAGS:-n}" = "n" ] || echo " flags =$XFLAGS" |
113 | ||
114 | [ "${INTERFACE:-n}" = "n" ] || echo " bind = $INTERFACE" | |
115 | [ "${NICE:-n}" = "n" ] || echo " nice = $NICE" | |
116 | [ "${INITGROUPS:-n}" = "n" ] || echo " groups = $INITGROUPS" | |
117 | [ "${LOG_TYPE:-n}" = "n" ] || echo " log_type = $LOG_TYPE" | |
118 | [ "${LOG_SUCCESS:-n}" = "n" ] || echo " log_on_success = $LOG_SUCCESS" | |
119 | [ "${LOG_FAILURE:-n}" = "n" ] || echo " log_on_failure = $LOG_FAILURE" | |
120 | [ "${ENV:-n}" = "n" ] || echo " env = $ENV" | |
121 | [ "${PASSENV:-n}" = "n" ] || echo " passenv = $PASSENV" | |
122 | [ "${MAX_LOAD:-n}" = "n" ] || echo " max_load = $MAX_LOAD" | |
123 | [ "${ACCESS_TIMES:-n}" = "n" ] || echo " access_times = $ACCESS_TIMES" | |
124 | [ "${REDIRECT:-n}" = "n" ] || echo " redirect = $REDIRECT" | |
125 | [ "${BANNER:-n}" = "n" ] || echo " banner = $BANNER" | |
126 | [ "${BANNER_SUCCESS:-n}" = "n" ] || echo " banner_success = $BANNER_SUCCESS" | |
127 | [ "${BANNER_FAILURE:-n}" = "n" ] || echo " banner_fail = $BANNER_FAILURE" | |
128 | [ "${CONNECTIONS_PER_SECOND:-n}" = "n" ] || echo " cps = $CONNECTIONS_PER_SECOND" | |
129 | echo "}" | |
130 | ||
131 | unset i XFLAGS XSERVICE_TYPE | |
132 | return 0 | |
133 | } | |
134 | ||
135 | status_rc_inetd() | |
136 | { | |
137 | status $INETDAEMON | |
138 | } | |
139 | ||
140 | reload_config() | |
141 | { | |
863c3d41 | 142 | killall -USR2 $INETDAEMON |
8e08ea27 | 143 | } |