/* $Id: igmp_def.h,v 1.1 1999/08/23 16:18:32 naamato Exp $ */
/*
 * Copyright(c) 1998 by Hitachi.Ltd All rights reserved.
 *
 */

#define IGMP_UNDEFINED          0x10    /* not defined */
#define IGMP_MEMBERSHIP_QUERY   0x11    /* version, type */
#define IGMP_MEMBERSHIP_REPORT  0x12
#define IGMP_PROTO_DVMRP        0x13
#define IGMP_PROTO_PIM          0x14
#define IGMP_CISCO_TRACE        0x15
#define IGMP_V2_MEMBERSHIP_REPORT      0x16
#define IGMP_MEMBERSHIP_LEAVE   0x17
#define IGMP_MTRACE_RESPONSE    0x1e
#define IGMP_MTRACE_REQUEST     0x1f
#define IGMP_MAX_TYPE           0x20
#define IGMP_BASE_TYPE          IGMP_UNDEFINED

#define IGMP_VERSION_1   1
#define IGMP_VERSION_2   2
#define IGMP_TTL  1

#define ALL_HOSTS_GROUP     0xe0000001
#define ALL_ROUTERS_GROUP   0xe0000002

#define DEFAULT_RESPONSE_TIME  100
#define IGMP_QUERY_INTERVAL    125

struct igmp {
    u_char    igmp_type;
    u_char    igmp_code;
    u_short   igmp_cksum;
    u_long    igmp_group;
};

/* router alert option */
/*#ifndef IPOPT_RA
#define IPOPT_RA 148
#endif
*/

#define RA_OPT_LEN  4

#define ROUTER_ALERT_ON   1
#define ROUTER_ALERT_OFF  0
