MINOR: spoe: Add "send-frag-payload" option in spoe-agent section

This option can be used to enable or to disable (prefixing the option line with
the "no" keyword) the sending of fragmented payload to agents. By default, this
option is enabled.
diff --git a/src/flt_spoe.c b/src/flt_spoe.c
index 3014fa8..7b33222 100644
--- a/src/flt_spoe.c
+++ b/src/flt_spoe.c
@@ -407,6 +407,11 @@
 		memcpy(chk->str+chk->len, "async", 5);
 		chk->len += 5;
 	}
+	if (agent != NULL && (agent->flags & SPOE_FL_RCV_FRAGMENTATION)) {
+		if (chk->len) chk->str[chk->len++] = ',';
+		memcpy(chk->str+chk->len, "fragmentation", 13);
+		chk->len += 5;
+	}
 	if (spoe_encode_buffer(chk->str, chk->len, &p, end) == -1)
 		goto too_big;
 
@@ -2170,9 +2175,10 @@
 	return 1;
 
   too_big:
-	// FIXME: if fragmentation not supported =>
-	//  ctx->status_code = SPOE_CTX_ERR_TOO_BIG;
-	//  return -1;
+	if (!(agent->flags & SPOE_FL_SND_FRAGMENTATION)) {
+		ctx->status_code = SPOE_CTX_ERR_TOO_BIG;
+		return -1;
+	}
 
 	SPOE_PRINTF(stderr, "%d.%06d [SPOE/%-15s] %s: stream=%p"
 		    " - encode fragmented messages - spoe_appctx=%p"
@@ -3017,7 +3023,7 @@
 		curagent->engine_id      = NULL;
 		curagent->var_pfx        = NULL;
 		curagent->var_on_error   = NULL;
-		curagent->flags          = (SPOE_FL_PIPELINING | SPOE_FL_ASYNC);
+		curagent->flags          = (SPOE_FL_PIPELINING | SPOE_FL_ASYNC | SPOE_FL_SND_FRAGMENTATION);
 		curagent->cps_max        = 0;
 		curagent->eps_max        = 0;
 		curagent->max_frame_size = MAX_FRAME_SIZE;
@@ -3138,6 +3144,15 @@
 				curagent->flags |= SPOE_FL_ASYNC;
 			goto out;
 		}
+		else if (!strcmp(args[1], "send-frag-payload")) {
+			if (alertif_too_many_args(1, file, linenum, args, &err_code))
+				goto out;
+			if (kwm == 1)
+				curagent->flags &= ~SPOE_FL_SND_FRAGMENTATION;
+			else
+				curagent->flags |= SPOE_FL_SND_FRAGMENTATION;
+			goto out;
+		}
 
 		/* Following options does not support negation */
 		if (kwm == 1) {