diff --git a/goaljobs.ml b/goaljobs.ml
index b5981ad78a6988c9f7c701ac411512ea39ee5f4a..2dc0541e740db30617a321bdd5a24cf81a098be4 100644
--- a/goaljobs.ml
+++ b/goaljobs.ml
@@ -187,9 +187,10 @@ let url_exists url =
     sprintf "curl --output /dev/null --silent --head --fail %s" (quote url) in
   match Sys.command cmd with
   | 0 -> true
-  | 1 -> false
+  | 19|22 -> false
   | r ->
-    let msg = sprintf "curl error testing '%s' (exit code %d)" url r in
+    let msg = sprintf "curl error testing '%s': exit code %d, see curl(1)"
+      url r in
     goal_failed msg
 
 let file_contains_string filename str =
@@ -208,11 +209,12 @@ let url_contains_string url str =
     sprintf "curl --output %s --silent --fail %s" (quote tmp) (quote url) in
   (match Sys.command cmd with
   | 0 -> ()
-  | 1 ->
+  | 19|22 ->
     let msg = sprintf "curl failed to download URL '%s'" url in
     goal_failed msg
   | r ->
-    let msg = sprintf "curl error testing '%s' (exit code %d)" url r in
+    let msg = sprintf "curl error testing '%s': exit code %d, see curl(1)"
+      url r in
     goal_failed msg
   );
   let r = file_contains_string tmp str in