summaryrefslogtreecommitdiffstats
path: root/src/expect/snprintf_default.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/expect/snprintf_default.c')
-rw-r--r--src/expect/snprintf_default.c21
1 files changed, 19 insertions, 2 deletions
diff --git a/src/expect/snprintf_default.c b/src/expect/snprintf_default.c
index e780bf1..7b088e7 100644
--- a/src/expect/snprintf_default.c
+++ b/src/expect/snprintf_default.c
@@ -23,6 +23,7 @@ int __snprintf_expect_default(char *buf,
unsigned int flags)
{
int ret = 0, size = 0, offset = 0;
+ char *delim = "";
switch(msg_type) {
case NFCT_T_NEW:
@@ -48,8 +49,24 @@ int __snprintf_expect_default(char *buf,
BUFFER_SIZE(ret, size, len, offset);
}
- /* Delete the last blank space */
- size--;
+ if (exp->flags & NF_CT_EXPECT_PERMANENT) {
+ ret = snprintf(buf+offset, len, "PERMANENT");
+ BUFFER_SIZE(ret, size, len, offset);
+ delim = ",";
+ }
+ if (exp->flags & NF_CT_EXPECT_INACTIVE) {
+ ret = snprintf(buf+offset, len, "%sINACTIVE", delim);
+ BUFFER_SIZE(ret, size, len, offset);
+ delim = ",";
+ }
+ if (exp->flags & NF_CT_EXPECT_USERSPACE) {
+ ret = snprintf(buf+offset, len, "%sUSERSPACE", delim);
+ BUFFER_SIZE(ret, size, len, offset);
+ }
+
+ /* Delete the last blank space if needed */
+ if (len > 0 && buf[size-1] == ' ')
+ size--;
return size;
}