summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2006-11-17 10:55:17 +0000
committerRainer Gerhards <rgerhards@adiscon.com>2006-11-17 10:55:17 +0000
commit42c47e4678f9cd49f0f095bb4a41f4c5e6bf57a2 (patch)
treecf53bcc6627d5ae4fd2a2c1324dd60b66ef968c4
parent1fd5ede03ae0a1cbb939bd6dc11d097c8bcd0da3 (diff)
downloadrsyslog-42c47e4678f9cd49f0f095bb4a41f4c5e6bf57a2.tar.gz
rsyslog-42c47e4678f9cd49f0f095bb4a41f4c5e6bf57a2.tar.xz
rsyslog-42c47e4678f9cd49f0f095bb4a41f4c5e6bf57a2.zip
escape-cc property replacer option implemented
-rw-r--r--syslogd.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/syslogd.c b/syslogd.c
index fd2bcb8e..a2b78a54 100644
--- a/syslogd.c
+++ b/syslogd.c
@@ -3340,6 +3340,7 @@ static char *MsgGetProp(struct msg *pMsg, struct templateEntry *pTpe,
/* OK, let's do the escaping... */
char *pBufStart;
char szCCEsc[8]; /* buffer for escape sequence */
+ int i;
iLen += iNumCC * 4;
pBufStart = pBuf = malloc((iLen + 1) * sizeof(char));
@@ -3351,7 +3352,9 @@ static char *MsgGetProp(struct msg *pMsg, struct templateEntry *pTpe,
}
while(*pRes) {
if(iscntrl(*pRes)) {
- /* TODO: fill escape coding */
+ snprintf(szCCEsc, sizeof(szCCEsc), "#%3.3d", *pRes);
+ for(i = 0 ; i < 4 ; ++i)
+ *pBuf++ = szCCEsc[i];
} else {
*pBuf++ = *pRes;
}