~ubuntu-branches/ubuntu/trusty/monit/trusty-proposed

« back to all changes in this revision

Viewing changes to src/alert.c

  • Committer: Package Import Robot
  • Author(s): Sergey B Kirpichev
  • Date: 2013-09-05 17:03:07 UTC
  • mfrom: (1.1.19)
  • Revision ID: package-import@ubuntu.com-20130905170307-ae94md1vagm60e41
Tags: 1:5.6-1
ImportedĀ UpstreamĀ versionĀ 5.6

Show diffs side-by-side

added added

removed removed

Lines of Context:
69
69
 
70
70
 
71
71
static void copy_mail(Mail_T, Mail_T);
72
 
static void replace_bare_linefeed(Mail_T *);
73
 
static void substitute(Mail_T *, Event_T);
 
72
static void escape(Mail_T);
 
73
static void substitute(Mail_T, Event_T);
74
74
 
75
75
 
76
76
/* ------------------------------------------------------------------ Public */
119
119
 
120
120
        NEW(tmp);
121
121
        copy_mail(tmp, m);
122
 
        substitute(&tmp, E);
123
 
        replace_bare_linefeed(&tmp);
 
122
        substitute(tmp, E);
 
123
        escape(tmp);
124
124
        tmp->next= list;
125
125
        list= tmp;
126
126
 
164
164
 
165
165
        NEW(tmp);
166
166
        copy_mail(tmp, m);
167
 
        substitute(&tmp, E);
168
 
        replace_bare_linefeed(&tmp);
 
167
        substitute(tmp, E);
 
168
        escape(tmp);
169
169
        tmp->next= list;
170
170
        list= tmp;
171
171
 
190
190
}
191
191
 
192
192
 
193
 
static void substitute(Mail_T *m, Event_T e) {
 
193
static void substitute(Mail_T m, Event_T e) {
194
194
  char timestamp[STRLEN];
195
195
 
196
196
  ASSERT(m && e);
197
197
 
198
 
  Util_replaceString(&(*m)->from,    "$HOST", Run.system->name);
199
 
  Util_replaceString(&(*m)->subject, "$HOST", Run.system->name);
200
 
  Util_replaceString(&(*m)->message, "$HOST", Run.system->name);
 
198
  Util_replaceString(&m->from,    "$HOST", Run.system->name);
 
199
  Util_replaceString(&m->subject, "$HOST", Run.system->name);
 
200
  Util_replaceString(&m->message, "$HOST", Run.system->name);
201
201
 
202
202
  Time_string(e->collected.tv_sec, timestamp);
203
 
  Util_replaceString(&(*m)->subject, "$DATE", timestamp);
204
 
  Util_replaceString(&(*m)->message, "$DATE", timestamp);
205
 
 
206
 
  Util_replaceString(&(*m)->subject, "$SERVICE", Event_get_source_name(e));
207
 
  Util_replaceString(&(*m)->message, "$SERVICE", Event_get_source_name(e));
208
 
 
209
 
  Util_replaceString(&(*m)->subject, "$EVENT", Event_get_description(e));
210
 
  Util_replaceString(&(*m)->message, "$EVENT", Event_get_description(e));
211
 
 
212
 
  Util_replaceString(&(*m)->subject, "$DESCRIPTION", NVLSTR(Event_get_message(e)));
213
 
  Util_replaceString(&(*m)->message, "$DESCRIPTION", NVLSTR(Event_get_message(e)));
214
 
 
215
 
  Util_replaceString(&(*m)->subject, "$ACTION", Event_get_action_description(e));
216
 
  Util_replaceString(&(*m)->message, "$ACTION", Event_get_action_description(e));
 
203
  Util_replaceString(&m->subject, "$DATE", timestamp);
 
204
  Util_replaceString(&m->message, "$DATE", timestamp);
 
205
 
 
206
  Util_replaceString(&m->subject, "$SERVICE", Event_get_source_name(e));
 
207
  Util_replaceString(&m->message, "$SERVICE", Event_get_source_name(e));
 
208
 
 
209
  Util_replaceString(&m->subject, "$EVENT", Event_get_description(e));
 
210
  Util_replaceString(&m->message, "$EVENT", Event_get_description(e));
 
211
 
 
212
  Util_replaceString(&m->subject, "$DESCRIPTION", NVLSTR(Event_get_message(e)));
 
213
  Util_replaceString(&m->message, "$DESCRIPTION", NVLSTR(Event_get_message(e)));
 
214
 
 
215
  Util_replaceString(&m->subject, "$ACTION", Event_get_action_description(e));
 
216
  Util_replaceString(&m->message, "$ACTION", Event_get_action_description(e));
217
217
}
218
218
 
219
219
 
248
248
}
249
249
 
250
250
 
251
 
static void replace_bare_linefeed(Mail_T *m) {
252
 
  Util_replaceString(&(*m)->message, "\r\n", "\n");
253
 
  Util_replaceString(&(*m)->message, "\n", "\r\n");
 
251
static void escape(Mail_T m) {
 
252
  // replace bare linefeed
 
253
  Util_replaceString(&m->message, "\r\n", "\n");
 
254
  Util_replaceString(&m->message, "\n", "\r\n");
 
255
  // escape ^.
 
256
  Util_replaceString(&m->message, "\n.", "\n..");
254
257
}