specify proper length of strings (GGUS #82746)
authorDaniel Kouřil <kouril@ics.muni.cz>
Tue, 12 Jun 2012 12:54:12 +0000 (12:54 +0000)
committerDaniel Kouřil <kouril@ics.muni.cz>
Tue, 12 Jun 2012 12:54:12 +0000 (12:54 +0000)
org.glite.lbjp-common.gss/src/glite_gss.c

index b612f97..038f539 100644 (file)
@@ -749,13 +749,13 @@ edg_wll_gss_acquire_cred_gsi(const char *cert_file, const char *key_file, edg_wl
         goto end;
       }
       
-      asprintf((char**)&buffer.value, "X509_USER_PROXY=%s", proxy_file);
-      if (buffer.value == NULL) {
+      ret = asprintf((char**)&buffer.value, "X509_USER_PROXY=%s", proxy_file);
+      if (ret == -1) {
         errno = ENOMEM;
         ret = EDG_WLL_GSS_ERROR_ERRNO;
         goto end;
       }
-      buffer.length = strlen(proxy_file);
+      buffer.length = ret;
 
       major_status = gss_import_cred(&minor_status, &gss_cred,
                                     GSS_C_NO_OID, 1,
@@ -950,9 +950,9 @@ edg_wll_gss_connect_ext(edg_wll_GssCred cred, char const *hostname, int port,
     gss_buffer_desc input_token = GSS_C_EMPTY_BUFFER;
     int ret;
 
-    asprintf(&servername, "%s@%s",
+    ret = asprintf(&servername, "%s@%s",
            (service) ? service : "host", hostname);
-    if (servername == NULL) {
+    if (ret == -1) {
        errno = ENOMEM;
        return EDG_WLL_GSS_ERROR_ERRNO;
     }