Author: ae
Date: Tue Nov 26 02:50:25 2019
New Revision: 355105
URL: https://svnweb.freebsd.org/changeset/base/355105

Log:
  MFC r354858:
    Fix the byte order of IPv4 address parsed from begemotSnmpdTransInetStatus
    config option.
  
    An address is already in network byte order, there is no need to do
    htonl().
  
    PR:         242056

Modified:
  stable/12/contrib/bsnmp/snmpd/trans_inet.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/contrib/bsnmp/snmpd/trans_inet.c
==============================================================================
--- stable/12/contrib/bsnmp/snmpd/trans_inet.c  Tue Nov 26 02:26:34 2019        
(r355104)
+++ stable/12/contrib/bsnmp/snmpd/trans_inet.c  Tue Nov 26 02:50:25 2019        
(r355105)
@@ -458,12 +458,10 @@ struct inet_port_params {
 static int
 ipv4_create(struct inet_port *port, struct inet_port_params *params)
 {
-       uint32_t ip;
 
        if (params->addr_len != 4)
                return (SNMP_ERR_INCONS_VALUE);
 
-       memcpy(&ip, params->addr, 4);
        struct port_sock *sock = calloc(1, sizeof(struct port_sock));
        if (sock == NULL)
                return (SNMP_ERR_GENERR);
@@ -477,8 +475,8 @@ ipv4_create(struct inet_port *port, struct inet_port_p
 
        sin->sin_len = sizeof(struct sockaddr_in);
        sin->sin_family = AF_INET;
-       sin->sin_addr.s_addr = htonl(ip);
        sin->sin_port = htons(params->port);
+       memcpy(&sin->sin_addr, params->addr, 4); /* network byte order */
 
        sock->port = port;
 
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to