Blob Blame History Raw
diff -up openwsman-4391e5c68d99c6239e1672d1c8a5a16d7d8c4c2b/src/server/wsmand-listener.c.orig openwsman-4391e5c68d99c6239e1672d1c8a5a16d7d8c4c2b/src/server/wsmand-listener.c
--- openwsman-4391e5c68d99c6239e1672d1c8a5a16d7d8c4c2b/src/server/wsmand-listener.c.orig	2016-07-27 16:03:55.000000000 +0200
+++ openwsman-4391e5c68d99c6239e1672d1c8a5a16d7d8c4c2b/src/server/wsmand-listener.c	2018-01-22 13:05:04.478923300 +0100
@@ -344,6 +344,35 @@ DONE:
 	if (fault_reason == NULL) {
 		// this is a way to segfault, investigate
 		//fault_reason = shttpd_reason_phrase(status);
+		// ugly workaround follows...
+		switch (status) {
+			case 200:
+				fault_reason = "OK";
+				break;
+			case 400:
+				fault_reason = "Bad request";
+				break;
+			case 401:
+				fault_reason = "Unauthorized";
+				break;
+			case 403:
+				fault_reason = "Forbidden";
+				break;
+			case 404:
+				fault_reason = "Not found";
+				break;
+			case 500:
+				fault_reason = "Internal Error";
+				break;
+			case 501:
+				fault_reason = "Not implemented";
+				break;
+			case 415:
+				fault_reason = "Unsupported Media Type";
+				break;
+			default:
+				fault_reason = "";
+		}
 	}
 	debug("Response status=%d (%s)", status, fault_reason);