updates. New data types.
[silc.git] / lib / silcske / payload.c
index ea9313f10760585a5c14c522f49ba5685bbbd1e2..fe03125f78edd4b9236fed0cb015d86a4906c38d 100644 (file)
@@ -188,7 +188,7 @@ SilcSKEStatus silc_ske_payload_ke_encode(SilcSKE ske,
 {
   SilcBuffer buf;
   unsigned char *x_str;
-  unsigned int x_len;
+  uint32 x_len;
   int ret;
 
   SILC_LOG_DEBUG(("Encoding KE Payload"));
@@ -250,9 +250,9 @@ SilcSKEStatus silc_ske_payload_ke_decode(SilcSKE ske,
 {
   SilcSKEStatus status = SILC_SKE_STATUS_ERROR;
   SilcSKEKEPayload *payload;
-  unsigned char *x;
-  unsigned short x_len;
-  unsigned int tot_len = 0, len2;
+  unsigned char *x = NULL;
+  uint16 x_len;
+  uint32 tot_len = 0, len2;
   int ret;
 
   SILC_LOG_DEBUG(("Decoding Key Exchange Payload"));
@@ -331,6 +331,8 @@ SilcSKEStatus silc_ske_payload_ke_decode(SilcSKE ske,
     silc_free(payload->pk_data);
   if (payload->sign_data)
     silc_free(payload->sign_data);
+  if (x)
+    silc_free(x);
   silc_free(payload);
   ske->status = status;
   return status;