BUG/MINOR: ssl/cli: check trash allocation in cli_io_handler_commit_cert()

Possible NULL pointer dereference found by coverity.

Fix #350 #340.
diff --git a/src/ssl_sock.c b/src/ssl_sock.c
index 0e4244d..772310b 100644
--- a/src/ssl_sock.c
+++ b/src/ssl_sock.c
@@ -10016,6 +10016,9 @@
 	struct ckch_inst *ckchi, *ckchis;
 	struct buffer *trash = alloc_trash_chunk();
 
+	if (trash == NULL)
+		goto error;
+
 	if (unlikely(si_ic(si)->flags & (CF_WRITE_ERROR|CF_SHUTW)))
 		goto error;
 
@@ -10142,10 +10145,12 @@
 
 error:
 	/* spin unlock and free are done in the release  function */
-	chunk_appendf(trash, "\n%sFailed!\n", err);
-	if (ci_putchk(si_ic(si), trash) == -1)
-		si_rx_room_blk(si);
-	free_trash_chunk(trash);
+	if (trash) {
+		chunk_appendf(trash, "\n%sFailed!\n", err);
+		if (ci_putchk(si_ic(si), trash) == -1)
+			si_rx_room_blk(si);
+		free_trash_chunk(trash);
+	}
 	/* error: call the release function and don't come back */
 	return 1;
 }