diff --git a/lib/smux.c b/lib/smux.c
index 1941cf8..b7cd18d 100644
--- a/lib/smux.c
+++ b/lib/smux.c
@@ -270,7 +270,6 @@
 smux_getresp_send (oid objid[], size_t objid_len, long reqid, long errstat,
 		   long errindex, u_char val_type, void *arg, size_t arg_len)
 {
-  int ret;
   u_char buf[BUFSIZ];
   u_char *ptr, *h1, *h1e, *h2, *h2e;
   size_t len, length;
@@ -326,7 +325,7 @@
   if (debug_smux)
     zlog_debug ("SMUX getresp send: %td", (ptr - buf));
   
-  ret = send (smux_sock, buf, (ptr - buf), 0);
+  send (smux_sock, buf, (ptr - buf), 0);
 }
 
 static u_char *
@@ -946,7 +945,7 @@
   u_char *ptr;
   size_t len;
   long version;
-  u_char progname[] = QUAGGA_PROGNAME "-" QUAGGA_VERSION;
+  const char progname[] = QUAGGA_PROGNAME "-" QUAGGA_VERSION;
 
   if (debug_smux)
     {
@@ -977,7 +976,7 @@
   ptr = asn_build_string (ptr, &len, 
 			  (u_char)
 			  (ASN_UNIVERSAL | ASN_PRIMITIVE | ASN_OCTET_STR),
-			  progname, strlen (progname));
+			  (const u_char *) progname, strlen (progname));
 
   /* SMUX connection password. */
   ptr = asn_build_string (ptr, &len, 
