Commit 905aee70 authored by gauthier's avatar gauthier
Browse files

moved NEMO_SHO from trunk to extras branch


git-svn-id: http://svn.eurecom.fr/openair4G/trunk@7750 818b1a75-f10b-46b9-bf7c-635c3b92a50f
parent 0c4ba24a
This diff is collapsed.
THE APPLY ORDER MUST BE THE FOLLOWING:
mmipv6-daemon-umip-0.4-nepl-20080108.patch
mmipv6-daemon-umip-0.4-nepl-mcoa-20080108.patch
mmipv6-daemon-umip-0.4-sho-20080331.patch
mmipv6-daemon-umip-0.4-nasmesh-2009-may-12.patch
Only in mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho: config.h
Only in mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho: config.log
Only in mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho: config.status
Only in mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho/libmissing: .deps
Only in mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho/libmissing: Makefile
Only in mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho/libnetlink: .deps
Only in mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho/libnetlink: Makefile
Only in mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho: Makefile
Only in mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho/man: Makefile
Only in mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho/src: .deps
Only in mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho/src: gram.c
Only in mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho/src: gram.h
Only in mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho/src: Makefile
diff -ur mipv6-daemon-umip-0.4.all.paches.original/src/mh.c mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho/src/mh.c
--- mipv6-daemon-umip-0.4.all.paches.original/src/mh.c 2009-05-12 14:38:53.000000000 +0200
+++ mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho/src/mh.c 2009-05-12 14:33:25.000000000 +0200
@@ -816,8 +816,11 @@
}
pthread_mutex_lock(&mh_sock.send_mutex);
- setsockopt(mh_sock.fd, IPPROTO_IPV6, IPV6_PKTINFO,
+ ret = setsockopt(mh_sock.fd, IPPROTO_IPV6, IPV6_PKTINFO,
&on, sizeof(int));
+ if (ret < 0)
+ dbg("setsockopt: %s\n", strerror(errno));
+
ret = sendmsg(mh_sock.fd, &msg, 0);
if (ret < 0)
dbg("sendmsg: %s\n", strerror(errno));
Only in mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho/src: mh.c~
diff -ur mipv6-daemon-umip-0.4.all.paches.original/src/mn.c mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho/src/mn.c
--- mipv6-daemon-umip-0.4.all.paches.original/src/mn.c 2009-05-12 14:38:53.000000000 +0200
+++ mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho/src/mn.c 2009-05-12 14:33:25.000000000 +0200
@@ -130,6 +130,8 @@
* is the BID number. BID must be between
* BCE_TABLE_MIN and BCE_TABLE_MAX
*/
+ MDBG("--------------------------------------\n");
+ MDBG("mcoa_mn_init_rt_table()\n");
assert(bule);
/* If BID is not assigned, default table is taken */
@@ -147,6 +149,8 @@
{
int ret = -1;
+ MDBG("--------------------------------------\n");
+ MDBG("mn_block_rule_del()\n");
if (!(hai->home_block & HOME_ADDR_RULE_BLOCK)) {
MDBG("blackhole is not set.\n");
return ret;
@@ -166,6 +170,8 @@
{
int ret = -1;
+ MDBG("--------------------------------------\n");
+ MDBG("mn_block_rule_add()\n");
if (hai->home_block & HOME_ADDR_RULE_BLOCK) {
MDBG("blackhole is already set.\n");
return ret;
@@ -182,6 +188,8 @@
static void bul_expire(struct tq_elem *tqe)
{
+ MDBG("--------------------------------------\n");
+ MDBG("bul_expire()\n");
pthread_rwlock_wrlock(&mn_lock);
if (!task_interrupted()) {
struct bulentry *bule = tq_data(tqe, struct bulentry, tqe);
@@ -205,6 +213,8 @@
uint16_t flags = e->flags;
uint16_t bid = e->bid;
+ MDBG("--------------------------------------\n");
+ MDBG("bule_invalidate()\n");
if (type != BUL_ENTRY)
return;
@@ -307,6 +317,8 @@
struct in6_addr *raddr = &ip6h->ip6_dst;
struct in6_addr addr;
+ MDBG("--------------------------------------\n");
+ MDBG("mn_recv_param_prob()\n");
/* We only handle code 1 & 2 messages. */
if (ih->icmp6_code != ICMP6_PARAMPROB_NEXTHEADER &&
ih->icmp6_code != ICMP6_PARAMPROB_OPTION)
@@ -623,6 +635,8 @@
*/
static int mn_dereg_bule(struct bulentry *bule)
{
+ MDBG("--------------------------------------\n");
+ MDBG("mn_dereg_bule()\n");
if (bule->type != NON_MIP_CN_ENTRY) {
bule->seq++;
bule->mcoa_dereg = 0;
@@ -637,6 +651,8 @@
{
struct bulentry *bule = vbule;
+ MDBG("--------------------------------------\n");
+ MDBG("mn_dereg()\n");
if (bule->type == BUL_ENTRY) {
if (!(bule->flags & IP6_MH_BU_HOME)) {
bule->dereg = 1;
@@ -684,6 +700,8 @@
{
int dhaad = dhaad_home_reg_failed(hai);
int type = FLUSH_VALID;
+ MDBG("--------------------------------------\n");
+ MDBG("mn_change_ha()\n");
if (hai->home_reg_status != HOME_REG_NONE)
bul_iterate(&hai->bul, _bul_flush, &type);
syslog(LOG_ERR,
@@ -820,6 +838,8 @@
uint32_t valid = PREFIX_LIFETIME_INFINITE;
int plen = (mha->if_next == hai->if_tunnel ? 128 : hai->plen);
+ MDBG("--------------------------------------\n");
+ MDBG("mv_hoa\n");
clock_gettime(CLOCK_REALTIME, &now);
if (hai->lladdr_comp && rta_tb[IFA_CACHEINFO] != NULL) {
@@ -889,6 +909,8 @@
{
struct list_head *l;
struct prefix_list_entry *pe;
+ MDBG("--------------------------------------\n");
+ MDBG("nemo_mr_tnl_routes_add\n");
list_for_each(l, &hai->mob_net_prefixes) {
struct prefix_list_entry *p;
p = list_entry(l, struct prefix_list_entry, list);
@@ -917,6 +939,8 @@
int ifindex, int all, int rtable)
{
int err = 0;
+ MDBG("--------------------------------------\n");
+ MDBG("mn_tnl_state_add\n");
if (hai->home_reg_status != HOME_REG_NONE) {
if ((err = mn_ro_pol_add(hai, ifindex, all)) < 0)
return err;
@@ -939,6 +963,8 @@
int ifindex, int rtable)
{
struct list_head *l;
+ MDBG("--------------------------------------\n");
+ MDBG("nemo_mr_tnl_routes_del\n");
list_for_each(l, &hai->mob_net_prefixes) {
struct prefix_list_entry *p;
p = list_entry(l, struct prefix_list_entry, list);
@@ -1001,6 +1027,8 @@
struct home_addr_info *hai,
struct timespec *lifetime)
{
+ MDBG("--------------------------------------\n");
+ MDBG("process_first_home_bu\n");
int err = 0;
assert(hai->current_coa);
bule->type = BUL_ENTRY;
@@ -1090,6 +1118,8 @@
int homereg_expired = 0;
movement_t type_movement = MIP6_TYPE_MOVEMENT_UNKNOWN;
+ MDBG("--------------------------------------\n");
+ MDBG("mn_send_home_bu\n");
TRACE;
assert(hai->current_coa);
@@ -1285,6 +1315,8 @@
void mn_send_cn_bu(struct bulentry *bule)
{
+ MDBG("--------------------------------------\n");
+ MDBG("mn_send_cn_bu\n");
/* Rate limiting CN registration binding updates
is necessary for multihomed MNs */
if (mn_bu_ratelimit(bule))
@@ -1487,6 +1519,8 @@
struct timespec now, ba_lifetime, br_adv;
uint16_t seqno, bid;
+ MDBG("--------------------------------------\n");
+ MDBG("mn_recv_ba\n");
TRACE;
if (len < sizeof(struct ip6_mh_binding_ack) ||
@@ -1875,6 +1909,8 @@
struct home_addr_info *hai,
int replace)
{
+ MDBG("--------------------------------------\n");
+ MDBG("mcoa_iface_dflt_hoa_rule_del\n");
/* MCoA: Delete the default HoA rule */
rule_del(NULL, bule->bid, IP6_RULE_PRIO_MIP6_HOA_OUT,
0, RTN_UNICAST, &hai->hoa.addr, 128,
@@ -1900,6 +1936,8 @@
struct prefix_list_entry *p,
int replace)
{
+ MDBG("--------------------------------------\n");
+ MDBG("mcoa_iface_dflt_mnp_rules_del\n");
/* MCoA: Delete the default MNP rule */
rule_del(NULL, bule->bid, IP6_RULE_PRIO_MIP6_FWD_MCOA,
0, RTN_UNICAST, &p->ple_prefix, p->ple_plen,
@@ -1926,6 +1964,8 @@
struct list_head *l;
int delete_dflt_mnp = 0;
+ MDBG("--------------------------------------\n");
+ MDBG("mcoa_iface_rules_del\n");
bule = bul_get(hai, NULL, &hai->ha_addr, bid);
if (!hai->reg_mcoa || (bule && !bule->rules))
return NULL;
@@ -1977,6 +2017,8 @@
{
struct list_head *l;
+ MDBG("--------------------------------------\n");
+ MDBG("mcoa_mn_rules_del\n");
list_for_each(l, &hinfo->mcoa) {
struct mn_addr *iface = NULL;
iface = list_entry(l, struct mn_addr, list);
@@ -2006,6 +2048,8 @@
struct list_head *l;
uint8_t prio;
+ MDBG("--------------------------------------\n");
+ MDBG("mcoa_iface_rules_add\n");
bule = bul_get(hai, NULL, &hai->ha_addr, bid);
if (!bid || !hai->reg_mcoa || !bule || (bule && bule->rules))
return 0;
@@ -2088,6 +2132,8 @@
{
struct list_head *l;
+ MDBG("--------------------------------------\n");
+ MDBG("nemo_mr_rules_del\n");
list_for_each(l, &hinfo->mob_net_prefixes) {
struct prefix_list_entry *p = NULL;
p = list_entry(l, struct prefix_list_entry, list);
@@ -2111,6 +2157,8 @@
struct prefix_list_entry *pe = NULL;
struct list_head *l;
+ MDBG("--------------------------------------\n");
+ MDBG("nemo_mr_rules_add\n");
list_for_each(l, &hinfo->mob_net_prefixes) {
struct prefix_list_entry *p = NULL;
p = list_entry(l, struct prefix_list_entry, list);
@@ -2164,6 +2212,8 @@
struct flag_hoa_args arg;
int plen = (hai->hoa.iif == hai->if_tunnel ? 128 : hai->plen);
+ MDBG("--------------------------------------\n");
+ MDBG("clean_home_addr_info\n");
list_del(&hai->list);
if (hai->mob_rtr)
nemo_mr_rules_del(hai);
@@ -2538,6 +2588,8 @@
struct mv_hoa_args mha;
struct list_head *l;
+ MDBG("--------------------------------------\n");
+ MDBG("mn_move\n");
mha.target = hai;
TRACE;
Only in mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho/src: mn.c~
diff -ur mipv6-daemon-umip-0.4.all.paches.original/src/movement.c mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho/src/movement.c
--- mipv6-daemon-umip-0.4.all.paches.original/src/movement.c 2009-05-12 14:38:53.000000000 +0200
+++ mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho/src/movement.c 2009-05-12 14:33:25.000000000 +0200
@@ -611,7 +611,9 @@
memset(lladdr, 0, sizeof(struct in6_addr));
uint8_t *eui = lladdr->s6_addr + 8;
switch (iface_type) {
- case ARPHRD_ETHER:
+ case ARPHRD_EUROPENAIRMESH:
+ memcpy(eui, hwa, 8);
+ break;
case ARPHRD_IEEE802:
case ARPHRD_IEEE802_TR:
case ARPHRD_IEEE80211:
Only in mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho/src: movement.c~
diff -ur mipv6-daemon-umip-0.4.all.paches.original/src/ndisc.h mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho/src/ndisc.h
--- mipv6-daemon-umip-0.4.all.paches.original/src/ndisc.h 2009-05-12 14:38:38.000000000 +0200
+++ mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho/src/ndisc.h 2009-05-12 14:33:25.000000000 +0200
@@ -11,6 +11,8 @@
{
switch (iface_type) {
/* supported physical devices */
+ case ARPHRD_EUROPENAIRMESH:
+ return 8;
case ARPHRD_ETHER:
case ARPHRD_IEEE802:
case ARPHRD_IEEE802_TR:
Only in mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho/src: ndisc.h~
Only in mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho/src: pmgr.c
Only in mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho/src: pmgr.h
Only in mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho/src: scan.c
Only in mipv6-daemon-umip-0.4_patch_nepl_mcoa_sho: stamp-h1
Only in mipv6-daemon-umip-0.4.all.paches.original: ZE_PATCH.patch
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment