[Xorp-hackers] error in gmake

Ashish Karpe ashishkarpe at gmail.com
Sun Mar 18 14:26:32 PDT 2007


hi all,
         we are getting error in gmake !!! we made changes in pim_vif.cc/hh
!! but we are getting error  in those files(pim.h & pim_proto_register.cc )
which we haven't modified  also  those  changes  made by  us was
independent  of  file  which  are  showing  error  !!


******************************************************************************************
In pim_vif.cc


.
.
.
// modification by us

    int        pim_bidir_df_send(const IPvX& assert_source_addr,
                const IPvX& assert_group_addr,
                bool rpt_bit,
                uint32_t metric_preference,
                uint32_t metric,
                string& error_msg);

    int        pim_register_send(const IPvX& rp_addr,
                  const IPvX& source_addr,
                  const IPvX& group_addr,
                  const uint8_t *rcvbuf,
                  size_t rcvlen,
                  string& error_msg);
    int        pim_register_null_send(const IPvX& rp_addr,
                       const IPvX& source_addr,
                       const IPvX& group_addr,
                       string& error_msg);



******************************************************************************************
error :

pim_proto_register.cc: In member function 'int
PimVif::pim_register_null_send(const IPvX&, const IPvX&, const IPvX&,
std::string&)':
pim_proto_register.cc:832: error: 'struct pim' has no member named
'pim_cksum'
gmake[2]: *** [pim_proto_register.lo] Error 1
gmake[2]: Leaving directory `/root/project/pimbidir/xorp-1.3/pim'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/root/project/pimbidir/xorp-1.3'
gmake: *** [all] Error 2

*****************************************************************************************

pim.h :



#ifndef _NETINET_PIM_H_
#define _NETINET_PIM_H_

/*
 * Protocol Independent Multicast (PIM) definitions.
 * RFC 2362, June 1998.
 *
 * Written by Ahmed Helmy, USC/SGI, July 1996.
 * Modified by George Edmond Eddy (Rusty), ISI, February 1998.
 * Modified by Pavlin Radoslavov, USC/ISI, May 1998, October 2000.
 */


#ifndef _PIM_VT
#ifndef BYTE_ORDER
# error BYTE_ORDER is not defined!
#endif
#if (BYTE_ORDER != BIG_ENDIAN) && (BYTE_ORDER != LITTLE_ENDIAN)
# error BYTE_ORDER must be defined to either BIG_ENDIAN or LITTLE_ENDIAN
#endif
#endif /* ! _PIM_VT */

/*
 * PIM packet header
 */
struct pim {
#ifdef _PIM_VT
    uint8_t        pim_vt;        /* PIM version and message type    */
#else /* ! _PIM_VT   */
#if BYTE_ORDER == BIG_ENDIAN
    u_int        pim_vers:4,    /* PIM protocol version        */
            pim_type:4;    /* PIM message type        */
#endif
#if BYTE_ORDER == LITTLE_ENDIAN
    u_int        pim_type:4,    /* PIM message type        */
            pim_vers:4;    /* PIM protocol version        */
#endif
#endif /* ! _PIM_VT  */
    uint8_t        pim_reserved;    /* Reserved            */
    uint16_t    pim_cksum;    /* IP-style checksum        */
};
/* KAME-related name backward compatibility */
#define pim_ver pim_vers
#define pim_rsv pim_reserved

#ifdef _PIM_VT
#define PIM_MAKE_VT(v, t)    (0xff & (((v) << 4) | (0x0f & (t))))
#define PIM_VT_V(x)        (((x) >> 4) & 0x0f)
#define PIM_VT_T(x)        ((x) & 0x0f)
#endif /* _PIM_VT */

#define PIM_VERSION        2
#define PIM_MINLEN        8    /* PIM message min. length    */
#define PIM_REG_MINLEN    (PIM_MINLEN+20)    /* PIM Register hdr + inner
IPv4 hdr */
#define PIM6_REG_MINLEN    (PIM_MINLEN+40)    /* PIM Register hdr + inner
IPv6 hdr */

/*
 * PIM message types
 */
#define PIM_HELLO        0x0    /* PIM-SM and PIM-DM        */
#define PIM_REGISTER        0x1    /* PIM-SM only            */
#define PIM_REGISTER_STOP    0x2    /* PIM-SM only            */
#define PIM_JOIN_PRUNE        0x3    /* PIM-SM and PIM-DM        */
#define PIM_BOOTSTRAP        0x4    /* PIM-SM only            */
#define PIM_ASSERT        0x5    /* PIM-SM and PIM-DM        */
#define PIM_GRAFT        0x6    /* PIM-DM only            */
#define PIM_GRAFT_ACK        0x7    /* PIM-DM only            */
#define PIM_CAND_RP_ADV        0x8    /* PIM-SM only            */
#define PIM_ALL_DF_ELECTION    0xa    /* Bidir-PIM-SM only        */

/*
 * PIM-Register message flags
 */
#define PIM_BORDER_REGISTER 0x80000000U    /* The Border bit (host-order)
 */
#define PIM_NULL_REGISTER   0x40000000U    /* The Null-Register bit
(host-order)*/

/*
 * All-PIM-Routers IPv4 and IPv6 multicast addresses
 */
#define INADDR_ALLPIM_ROUTERS_GROUP    (uint32_t)0xe000000dU  /* 224.0.0.13*/
#define IN6ADDR_LINKLOCAL_ALLPIM_ROUTERS    "ff02::d"
#define IN6ADDR_LINKLOCAL_ALLPIM_ROUTERS_INIT                \
    {{{ 0xff, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,        \
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d }}}

#endif /* _NETINET_PIM_H_ */


********************************************************************************************

In pim_proto_register.cc Error @ this line :


pim_header.pim_cksum = cksum;

********************************************************************************************

Thank you,
Ashish
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ICSI.Berkeley.EDU/pipermail/xorp-hackers/attachments/20070319/f3dad6b0/attachment.html 


More information about the Xorp-hackers mailing list