Lines 121-126
Link Here
|
121 |
BRACKET=$'\e[34;01m' |
121 |
BRACKET=$'\e[34;01m' |
122 |
fi |
122 |
fi |
123 |
|
123 |
|
|
|
124 |
|
125 |
# void sendmessages(void) |
126 |
# |
127 |
# send any einfo, ewarn, or eerror messages that have collected |
128 |
# upon exit of this shell (part of the emergemail feature). |
129 |
# |
130 |
trap sendmessages EXIT |
131 |
sendmessages() { |
132 |
for SEVERITY in "information" "warning" "error"; do |
133 |
BUFFER=${TMPDIR}/emergemail.buffer.${SEVERITY} |
134 |
if [ -f ${BUFFER} ]; then |
135 |
if [ -x /usr/sbin/sendmail ]; then |
136 |
/usr/sbin/sendmail root < ${BUFFER} |
137 |
unset ${EMESSAGES} |
138 |
else |
139 |
echo -e " ${WARN}*${NORMAL} the emergemail FEATURE "\ |
140 |
"was unable to find /usr/sbin/sendmail. " |
141 |
echo -e " ${WARN}*${NORMAL} You must have a Mail "\ |
142 |
"Transfer Agent (MTA) such as postfix, exim," |
143 |
echo -e " ${WARN}*${NORMAL} ssmtp, etc. to use this "\ |
144 |
"feature." |
145 |
fi |
146 |
rm -f ${BUFFER} |
147 |
fi |
148 |
done |
149 |
} |
150 |
|
151 |
|
152 |
# void emergemail(char *severity, char *message) |
153 |
# |
154 |
# send mail to root with the given message (if possible) |
155 |
# severity is either "information" (for einfo), |
156 |
# "warning" (for ewarn), |
157 |
# or "error" (for eerror). |
158 |
# |
159 |
emergemail() { |
160 |
SEVERITY=$1 |
161 |
MESSAGE=$2 |
162 |
BUFFER=${TMPDIR}/emergemail.buffer.${SEVERITY} |
163 |
if echo ${FEATURES} | grep -iq emergemail; then |
164 |
if [ ! -f ${BUFFER} ]; then |
165 |
echo -e "Subject: ${SEVERITY} from emerge of ${P}\n\n" > ${BUFFER} |
166 |
fi |
167 |
echo -e ${MESSAGE} >> ${BUFFER} |
168 |
fi |
169 |
} |
170 |
|
124 |
# void esyslog(char* priority, char* tag, char* message) |
171 |
# void esyslog(char* priority, char* tag, char* message) |
125 |
# |
172 |
# |
126 |
# use the system logger to log a message |
173 |
# use the system logger to log a message |
Lines 153-158
Link Here
|
153 |
echo -e " ${GOOD}*${NORMAL} ${*}" |
200 |
echo -e " ${GOOD}*${NORMAL} ${*}" |
154 |
fi |
201 |
fi |
155 |
|
202 |
|
|
|
203 |
emergemail information "${*}" |
204 |
|
156 |
return 0 |
205 |
return 0 |
157 |
} |
206 |
} |
158 |
|
207 |
|
Lines 166-171
Link Here
|
166 |
echo -ne " ${GOOD}*${NORMAL} ${*}" |
215 |
echo -ne " ${GOOD}*${NORMAL} ${*}" |
167 |
fi |
216 |
fi |
168 |
|
217 |
|
|
|
218 |
emergemail information "${*}" |
219 |
|
169 |
return 0 |
220 |
return 0 |
170 |
} |
221 |
} |
171 |
|
222 |
|
Lines 181-186
Link Here
|
181 |
echo -e " ${WARN}*${NORMAL} ${*}" |
232 |
echo -e " ${WARN}*${NORMAL} ${*}" |
182 |
fi |
233 |
fi |
183 |
|
234 |
|
|
|
235 |
emergemail warning "${*}" |
236 |
|
184 |
# Log warnings to system log |
237 |
# Log warnings to system log |
185 |
esyslog "daemon.warning" "rc-scripts" "${*}" |
238 |
esyslog "daemon.warning" "rc-scripts" "${*}" |
186 |
|
239 |
|
Lines 199-204
Link Here
|
199 |
echo -e " ${BAD}*${NORMAL} ${*}" |
252 |
echo -e " ${BAD}*${NORMAL} ${*}" |
200 |
fi |
253 |
fi |
201 |
|
254 |
|
|
|
255 |
emergemail error "${*}" |
256 |
|
202 |
# Log errors to system log |
257 |
# Log errors to system log |
203 |
esyslog "daemon.err" "rc-scripts" "${*}" |
258 |
esyslog "daemon.err" "rc-scripts" "${*}" |
204 |
|
259 |
|