]> granicus.if.org Git - curl/commitdiff
curl: show the libcurl release date in --version output
authorDaniel Stenberg <daniel@haxx.se>
Sun, 14 May 2017 15:09:45 +0000 (17:09 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Sun, 14 May 2017 15:10:04 +0000 (17:10 +0200)
... and support and additional "security patched" date for those who
enhance older versions that way. Pass on the define CURL_PATCHSTAMP with
a date for that.

Building with non-release headers shows the date as [unreleased].

Also: this changes the date format generated in the curlver.h file to be
"YYYY-MM-DD" (no name of the day or month, no time, no time zone) to
make it easier on the eye and easier to parse. Example (new) date
string: 2017-05-09

Suggested-by: Brian Childs
Closes #1474

include/curl/curlver.h
maketgz
src/tool_help.c

index 5d3e160f0e5264e02667a8b7a7bd5bb096b956d6..227571cd307e4325452897b8fdb796213fdd9eee 100644 (file)
  * timestamp is not stored in git, as the timestamp is properly set in the
  * tarballs by the maketgz script.
  *
- * The format of the date should follow this template:
+ * The format of the date follows this template:
  *
- * "Mon Feb 12 11:35:33 UTC 2007"
+ * "2007-11-23"
  */
-#define LIBCURL_TIMESTAMP "DEV"
+#define LIBCURL_TIMESTAMP "[unreleased]"
 
 #define CURL_VERSION_BITS(x,y,z) ((x)<<16|(y)<<8|z)
 #define CURL_AT_LEAST_VERSION(x,y,z) \
diff --git a/maketgz b/maketgz
index 2cc8e136451fa1180bed4c83dbf174d75081b4e4..a1509819c6d4dc67aa3233ac145652210c3590de 100755 (executable)
--- a/maketgz
+++ b/maketgz
@@ -67,8 +67,8 @@ if test -z "$only"; then
     PLIST="$PLIST$ext"
 fi
 
-# requires a date command that knows -u for UTC time zone
-datestamp=`LC_TIME=C date -u`
+# requires a date command that knows + for format
+datestamp=`date +"%F"`
 
 # Replace version number in header file:
 sed -i -e 's/^#define LIBCURL_VERSION .*/#define LIBCURL_VERSION "'$libversion'"/g' \
index 668499cca5ce3f597ddbe371bc020ab13c6ce692..46aae4527189594ce6e9522d0300acc48988f61d 100644 (file)
@@ -516,6 +516,12 @@ void tool_version_info(void)
   const char *const *proto;
 
   printf(CURL_ID "%s\n", curl_version());
+#ifdef CURL_PATCHSTAMP
+  printf("Release-Date: %s, security patched: %s\n",
+         LIBCURL_TIMESTAMP, CURL_PATCHSTAMP);
+#else
+  printf("Release-Date: %s\n", LIBCURL_TIMESTAMP);
+#endif
   if(curlinfo->protocols) {
     printf("Protocols: ");
     for(proto = curlinfo->protocols; *proto; ++proto) {