wrong assert in udpipencap?

Jörg Kaiser <[email protected]> Wed, 08 Aug 2012 11:08:25 +0200
Newsgroups gmane.network.routing.click
Message-ID <[email protected]>
Hi,

we were cross compiling and stumbled over an assert which seems to be in 
wrong position:
udpipencap.cc (line 86 et sqq.) assert can never hold true as headers 
are set afterwards.

cheers,
Jörg


Packet *
UDPIPEncap::simple_action(Packet *p_in)
{
   WritablePacket *p = p_in->push(sizeof(click_udp) + sizeof(click_ip));
   click_ip *ip = reinterpret_cast<click_ip *>(p->data());
   click_udp *udp = reinterpret_cast<click_udp *>(ip + 1);

#if !HAVE_INDIFFERENT_ALIGNMENT
   assert((uintptr_t)ip % 4 == 0);
#endif
   // set up IP header
   ip->ip_v = 4;
   ip->ip_hl = sizeof(click_ip) >> 2;
   ip->ip_len = htons(p->length());
   ip->ip_id = htons(_id.fetch_and_add(1));
   ip->ip_p = IP_PROTO_UDP;
   ip->ip_src = _saddr;