Author: dim
Date: Wed Sep  7 18:22:08 2016
New Revision: 305552
URL: https://svnweb.freebsd.org/changeset/base/305552

Log:
  MFC r305077:
  
  Squelch clang 3.9.0 warnings about BASE (which is 32768) being converted
  to -32768 when it is used as an argument to mp_itom(), in both libtelnet
  and newkey.  This code has been wrong since r26238 (!), so after almost
  20 years it is rather useless to try to correct it.
  
  MFC r305086:
  
  Fix warnings in telnet about invalid constant conversions, e.g.:
  
  contrib/telnet/telnet/commands.c:2914:13: error: implicit conversion
  from 'int' to 'char' changes value from 137 to -119
  [-Werror,-Wconstant-conversion]
                *lsrp++ = IPOPT_SSRR;
                        ~ ^~~~~~~~~~
  /usr/include/netinet/ip.h:152:21: note: expanded from macro 'IPOPT_SSRR'
  #define IPOPT_SSRR              137             /* strict source route */
                                ^~~
  contrib/telnet/telnet/commands.c:2916:13: error: implicit conversion
  from 'int' to 'char' changes value from 131 to -125
  [-Werror,-Wconstant-conversion]
                *lsrp++ = IPOPT_LSRR;
                        ~ ^~~~~~~~~~
  /usr/include/netinet/ip.h:148:21: note: expanded from macro 'IPOPT_LSRR'
  #define IPOPT_LSRR              131             /* loose source route */
                                ^~~
  
  Use unsigned char buffers instead.

Modified:
  stable/10/contrib/telnet/libtelnet/pk.c
  stable/10/contrib/telnet/telnet/commands.c
  stable/10/usr.bin/newkey/generic.c
Directory Properties:
  stable/10/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/11/contrib/telnet/libtelnet/pk.c
  stable/11/contrib/telnet/telnet/commands.c
  stable/11/usr.bin/newkey/generic.c
  stable/9/contrib/telnet/libtelnet/pk.c
  stable/9/contrib/telnet/telnet/commands.c
  stable/9/usr.bin/newkey/generic.c
Directory Properties:
  stable/11/   (props changed)
  stable/9/   (props changed)
  stable/9/contrib/   (props changed)
  stable/9/contrib/telnet/   (props changed)
  stable/9/usr.bin/   (props changed)

Modified: stable/10/contrib/telnet/libtelnet/pk.c
==============================================================================
--- stable/10/contrib/telnet/libtelnet/pk.c     Wed Sep  7 18:20:49 2016        
(r305551)
+++ stable/10/contrib/telnet/libtelnet/pk.c     Wed Sep  7 18:22:08 2016        
(r305552)
@@ -164,7 +164,7 @@ genkeys(char *public, char *secret)
         MINT *pk = mp_itom(0);
         MINT *sk = mp_itom(0);
         MINT *tmp;
-        MINT *base = mp_itom(BASE);
+        MINT *base = mp_itom((short)BASE);
         MINT *root = mp_itom(PROOT);
         MINT *modulus = mp_xtom(HEXMODULUS);
         short r;

Modified: stable/10/contrib/telnet/telnet/commands.c
==============================================================================
--- stable/10/contrib/telnet/telnet/commands.c  Wed Sep  7 18:20:49 2016        
(r305551)
+++ stable/10/contrib/telnet/telnet/commands.c  Wed Sep  7 18:22:08 2016        
(r305552)
@@ -112,7 +112,7 @@ static int send_tncmd(void (*)(int, int)
 static int setmod(int);
 static int clearmode(int);
 static int modehelp(void);
-static int sourceroute(struct addrinfo *, char *, char **, int *, int *, int 
*);
+static int sourceroute(struct addrinfo *, char *, unsigned char **, int *, int 
*, int *);
 
 typedef struct {
        const char *name;       /* command name */
@@ -2171,7 +2171,7 @@ switch_af(struct addrinfo **aip)
 int
 tn(int argc, char *argv[])
 {
-    char *srp = 0;
+    unsigned char *srp = 0;
     int proto, opt;
     int srlen;
     int srcroute = 0, result;
@@ -2844,10 +2844,10 @@ cmdrc(char *m1, char *m2)
  *             setsockopt, as socket protocol family.
  */
 static int
-sourceroute(struct addrinfo *ai, char *arg, char **cpp, int *lenp, int 
*protop, int *optp)
+sourceroute(struct addrinfo *ai, char *arg, unsigned char **cpp, int *lenp, 
int *protop, int *optp)
 {
        static char buf[1024 + ALIGNBYTES];     /*XXX*/
-       char *cp, *cp2, *lsrp, *ep;
+       unsigned char *cp, *cp2, *lsrp, *ep;
        struct sockaddr_in *_sin;
 #ifdef INET6
        struct sockaddr_in6 *sin6;

Modified: stable/10/usr.bin/newkey/generic.c
==============================================================================
--- stable/10/usr.bin/newkey/generic.c  Wed Sep  7 18:20:49 2016        
(r305551)
+++ stable/10/usr.bin/newkey/generic.c  Wed Sep  7 18:22:08 2016        
(r305552)
@@ -82,7 +82,7 @@ genkeys(char *public, char *secret, char
        MINT *pk = mp_itom(0);
        MINT *sk = mp_itom(0);
        MINT *tmp;
-       MINT *base = mp_itom(BASE);
+       MINT *base = mp_itom((short)BASE);
        MINT *root = mp_itom(PROOT);
        MINT *modulus = mp_xtom(HEXMODULUS);
        short r;
_______________________________________________
svn-src-stable-10@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-stable-10
To unsubscribe, send any mail to "svn-src-stable-10-unsubscr...@freebsd.org"

Reply via email to