Merge branch 'master' into getopt
[oweals/gnunet.git] / src / identity-provider / gnunet-identity-token.c
index 1f480aae0f4e2c5336b41e639add0e72806c3626..906899ea761353d4946796e3422eefb954bd15bf 100644 (file)
@@ -69,9 +69,9 @@ run (void *cls,
   header_b64 = strtok (token, ".");
   payload_b64 = strtok (NULL, ".");
   signature_b32 = strtok (NULL, ".");
-  if ( (NULL != header_b64) ||
-       (NULL != payload_b64) ||
-       (NULL != signature_b32) )
+  if ( (NULL == header_b64) ||
+       (NULL == payload_b64) ||
+       (NULL == signature_b32) )
   {
     GNUNET_log (GNUNET_ERROR_TYPE_MESSAGE,
                 _("Token `%s' is malformed\n"),
@@ -105,42 +105,48 @@ run (void *cls,
   token = NULL;
 
   if (print_token)
-    printf ("Token:\nHeader:\t\t%s\nPayload:\t%s\n", header, payload);
+    printf ("Token:\nHeader:\t\t%s\nPayload:\t%s\n",
+            header,
+            payload);
   GNUNET_free (header);
-  GNUNET_free (payload);
 
   payload_json = json_loads (payload, 0, &error);
-  if ((NULL == payload_json) || !json_is_object (payload_json))
+  GNUNET_free (payload);
+
+  if ((NULL == payload_json) || (! json_is_object (payload_json)) )
   {
     GNUNET_free (val);
     return;
   }
   keystring_json =  json_object_get (payload_json, "iss");
-  if (!json_is_string (keystring_json))
+  if (! json_is_string (keystring_json))
   {
     GNUNET_free (val);
     return;
   }
   keystring = json_string_value (keystring_json);
-  if (GNUNET_OK != GNUNET_CRYPTO_ecdsa_public_key_from_string (keystring,
-                                                               strlen (keystring),
-                                                               &key))
+  if (GNUNET_OK !=
+      GNUNET_CRYPTO_ecdsa_public_key_from_string (keystring,
+                                                  strlen (keystring),
+                                                  &key))
   {
     GNUNET_free (val);
     return;
   }
   GNUNET_STRINGS_string_to_data (signature_b32,
-                                strlen (signature_b32),
-                                &sig,
-                                sizeof (struct GNUNET_CRYPTO_EcdsaSignature));
+                                 strlen (signature_b32),
+                                 &sig,
+                                 sizeof (struct GNUNET_CRYPTO_EcdsaSignature));
 
   if (print_token)
-    printf ("Signature:\t%s\n", keystring);
-
-  if (GNUNET_OK != GNUNET_CRYPTO_ecdsa_verify(GNUNET_SIGNATURE_PURPOSE_GNUID_TOKEN,
-                                              purpose,
-                                              &sig,
-                                              &key))
+    printf ("Signature:\t%s\n",
+            keystring);
+
+  if (GNUNET_OK !=
+      GNUNET_CRYPTO_ecdsa_verify(GNUNET_SIGNATURE_PURPOSE_GNUID_TOKEN,
+                                 purpose,
+                                 &sig,
+                                 &key))
     printf("Signature not OK!\n");
   else
     printf("Signature OK!\n");
@@ -152,13 +158,18 @@ run (void *cls,
 int
 main(int argc, char *const argv[])
 {
-  static const struct GNUNET_GETOPT_CommandLineOption options[] = {
-    {'t', "token", NULL,
-      gettext_noop ("GNUid token"), 1,
-      &GNUNET_GETOPT_set_string, &token},
-    {'p', "print", NULL,
-      gettext_noop ("Print token contents"), 0,
-      &GNUNET_GETOPT_set_one, &print_token},
+  struct GNUNET_GETOPT_CommandLineOption options[] = {
+
+    GNUNET_GETOPT_OPTION_STRING ('t',
+                                 "token",
+                                 NULL,
+                                 gettext_noop ("GNUid token"),
+                                 &token),
+
+    GNUNET_GETOPT_OPTION_SET_ONE ('p',
+                                  "print",
+                                  gettext_noop ("Print token contents"),
+                                  &print_token),
 
     GNUNET_GETOPT_OPTION_END
   };