Re: ntohs/ntohl and bitops

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Arjan van de Ven wrote:
> why this __constant_htons and not just plain htons ??
> htons() gets auto-remapped to that anyway via the builtin "is this a
> constant" thing...... and to be honest htons() is more readable.

Indeed, why the need for the uglification?

Anyway, candidates for this kind of transformation:

net/ipx/af_ipx.c:1450:  if (ntohs(addr->sipx_port) <
IPX_MIN_EPHEMERAL_SOCKET &&
net/atm/br2684.c:308:   if (ntohs(eth->h_proto) >= 1536)
net/ipv6/netfilter/ip6t_LOG.c:114:                      if
(ntohs(fh->frag_off) & 0xFFF8)
net/ipv6/exthdrs_core.c:89:                     if (ntohs(*fp) & ~0x7)
net/ipv4/ipmr.c:1182:   if (skb->len+encap > dst_mtu(&rt->u.dst) &&
(ntohs(iph->frag_off) & IP_DF)) {
net/ipv4/netfilter/ip_conntrack_helper_pptp.c:710:      if
(ntohs(pptph->packetType) != PPTP_PACKET_CONTROL ||
net/ipv4/netfilter/ipt_LOG.c:70:        if (ntohs(ih->frag_off) & IP_CE)
net/ipv4/netfilter/ipt_LOG.c:72:        if (ntohs(ih->frag_off) & IP_DF)
net/ipv4/netfilter/ipt_LOG.c:74:        if (ntohs(ih->frag_off) & IP_MF)
net/ipv4/netfilter/ipt_LOG.c:78:        if (ntohs(ih->frag_off) & IP_OFFSET)
net/ipv4/netfilter/ipt_LOG.c:108:               if (ntohs(ih->frag_off)
& IP_OFFSET)
net/ipv4/netfilter/ipt_LOG.c:180:               if (ntohs(ih->frag_off)
& IP_OFFSET)
net/ipv4/netfilter/ipt_LOG.c:221:               if (ntohs(ih->frag_off)
& IP_OFFSET)
net/ipv4/netfilter/ipt_LOG.c:286:               if (ntohs(ih->frag_off)
& IP_OFFSET)
net/ipv4/netfilter/ipt_LOG.c:311:               if (ntohs(ih->frag_off)
& IP_OFFSET)
net/bridge/netfilter/ebt_ip.c:55:               if (ntohs(ih->frag_off)
& IP_OFFSET)
net/sunrpc/auth_gss/svcauth_gss.c:793:  if (ntohl(svc_getu32(argv)) !=
RPC_GSS_VERSION)
net/sunrpc/auth_gss/svcauth_gss.c:823:          if
(ntohl(svc_getu32(argv)) != RPC_AUTH_NULL)
net/sunrpc/auth_gss/svcauth_gss.c:825:          if
(ntohl(svc_getu32(argv)) != 0)
net/bluetooth/bnep/core.c:343:  if (ntohs(s->eh.h_proto) == 0x8100) {


(svcauth_gss.c:825 is a good one).



For consistency reasons, ntohs should be changed to htons here:

net/ipv6/netfilter/ip6t_eui64.c:43:    if (eth_hdr(skb)->h_proto ==
ntohs(ETH_P_IPV6)) {


Around net/ipv4/ipconfig.c:376 you might want to store the transformed
ic_myaddr in a variable instead of repeating the ntohl call.

-- 
➧ Ulrich Drepper ➧ Red Hat, Inc. ➧ 444 Castro St ➧ Mountain View, CA ❖

Attachment: signature.asc
Description: OpenPGP digital signature


[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux