您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ uip_ds6_set_addr_iid函数代码示例

51自学网 2021-06-03 09:08:08
  C++
这篇教程C++ uip_ds6_set_addr_iid函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中uip_ds6_set_addr_iid函数的典型用法代码示例。如果您正苦于以下问题:C++ uip_ds6_set_addr_iid函数的具体用法?C++ uip_ds6_set_addr_iid怎么用?C++ uip_ds6_set_addr_iid使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了uip_ds6_set_addr_iid函数的29个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: set_global_address

/*---------------------------------------------------------------------------*/static uip_ipaddr_t *set_global_address(void){  static uip_ipaddr_t ipaddr;  int i;  uint8_t state;  /* Assign a unique local address (RFC4193,     http://tools.ietf.org/html/rfc4193). */  uip_ip6addr(&ipaddr, 0xfc00, 0, 0, 0, 0, 0, 0, 0);  uip_ds6_set_addr_iid(&ipaddr, &uip_lladdr);  uip_ds6_addr_add(&ipaddr, 0, ADDR_AUTOCONF);  printf("IPv6 addresses: ");  for(i = 0; i < UIP_DS6_ADDR_NB; i++) {    state = uip_ds6_if.addr_list[i].state;    if(uip_ds6_if.addr_list[i].isused &&       (state == ADDR_TENTATIVE || state == ADDR_PREFERRED)) {      uip_debug_ipaddr_print(&uip_ds6_if.addr_list[i].ipaddr);      printf("/n");    }  }  return &ipaddr;}
开发者ID:ADVANSEE,项目名称:mist,代码行数:26,


示例2: set_own_addresses

/*---------------------------------------------------------------------------*/static voidset_own_addresses(){  int i;  uint8_t state;  rpl_dag_t *dag;  uip_ipaddr_t ipaddr;  uip_ip6addr(&ipaddr, 0xaaaa, 0, 0, 0, 0, 0, 0, 0);  uip_ds6_set_addr_iid(&ipaddr, &uip_lladdr);  uip_ds6_addr_add(&ipaddr, 0, ADDR_AUTOCONF);  PRINTF("Our IPv6 addresses:/n");  for(i = 0; i < UIP_DS6_ADDR_NB; i++) {    state = uip_ds6_if.addr_list[i].state;    if(uip_ds6_if.addr_list[i].isused && (state == ADDR_TENTATIVE || state        == ADDR_PREFERRED)) {      PRINTF("  ");      PRINT6ADDR(&uip_ds6_if.addr_list[i].ipaddr);      PRINTF("/n");      if (state == ADDR_TENTATIVE) {        uip_ds6_if.addr_list[i].state = ADDR_PREFERRED;      }    }  }  /* Become root of a new DODAG with ID our global v6 address */  dag = rpl_set_root(RPL_DEFAULT_INSTANCE, &ipaddr);  if(dag != NULL) {    rpl_set_prefix(dag, &ipaddr, 64);    PRINTF("Created a new RPL dag with ID: ");    PRINT6ADDR(&dag->dag_id);    PRINTF("/n");  }}
开发者ID:kfathallah,项目名称:contiki-mcast,代码行数:36,


示例3: set_ip_from_prefix

/*---------------------------------------------------------------------------*/static voidset_ip_from_prefix(uip_ipaddr_t *ipaddr, rpl_prefix_t *prefix){  memset(ipaddr, 0, sizeof(uip_ipaddr_t));  memcpy(ipaddr, &prefix->prefix, (prefix->length + 7) / 8);  uip_ds6_set_addr_iid(ipaddr, &uip_lladdr);}
开发者ID:jschandy,项目名称:contiki,代码行数:8,


示例4: set_global_address

/*---------------------------------------------------------------------------*/static voidset_global_address(void){  uip_ipaddr_t ipaddr;  uip_ip6addr(&ipaddr, 0xaaaa, 0, 0, 0, 0, 0, 0, 0);  uip_ds6_set_addr_iid(&ipaddr, &uip_lladdr);  uip_ds6_addr_add(&ipaddr, 0, ADDR_AUTOCONF);/* The choice of server address determines its 6LoPAN header compression. * (Our address will be compressed Mode 3 since it is derived from our link-local address) * Obviously the choice made here must also be selected in udp-server.c. * * For correct Wireshark decoding using a sniffer, add the /64 prefix to the 6LowPAN protocol preferences, * e.g. set Context 0 to aaaa::.  At present Wireshark copies Context/128 and then overwrites it. * (Setting Context 0 to aaaa::1111:2222:3333:4444 will report a 16 bit compressed address of aaaa::1111:22ff:fe33:xxxx) * * Note the IPCMV6 checksum verification depends on the correct uncompressed addresses. */ #if 0/* Mode 1 - 64 bits inline */   uip_ip6addr(&server_ipaddr, 0xaaaa, 0, 0, 0, 0, 0, 0, 1);#elif 1/* Mode 2 - 16 bits inline */  uip_ip6addr(&server_ipaddr, 0xaaaa, 0, 0, 0, 0, 0x00ff, 0xfe00, 1);#else/* Mode 3 - derived from server link-local (MAC) address */  uip_ip6addr(&server_ipaddr, 0xaaaa, 0, 0, 0, 0x0250, 0xc2ff, 0xfea8, 0xcd1a); //redbee-econotag#endif}
开发者ID:beshrns,项目名称:tsch-minimum,代码行数:32,


示例5: rpl_link_neighbor_callback

/*---------------------------------------------------------------------------*/voidrpl_link_neighbor_callback(const rimeaddr_t *addr, int status, int numtx){  uip_ipaddr_t ipaddr;  rpl_parent_t *parent;  rpl_instance_t *instance;  rpl_instance_t *end;  uip_ip6addr(&ipaddr, 0xfe80, 0, 0, 0, 0, 0, 0, 0);  uip_ds6_set_addr_iid(&ipaddr, (uip_lladdr_t *)addr);  for(instance = &instance_table[0], end = instance + RPL_MAX_INSTANCES; instance < end; ++instance) {    if(instance->used == 1 ) {      parent = rpl_find_parent_any_dag(instance, &ipaddr);      if(parent != NULL) {        /* Trigger DAG rank recalculation. */        PRINTF("RPL: rpl_link_neighbor_callback triggering update/n");        parent->updated = 1;        if(instance->of->neighbor_link_callback != NULL) {          instance->of->neighbor_link_callback(parent, status, numtx);        }      }    }  }}
开发者ID:1uk3,项目名称:contiki,代码行数:26,


示例6: set_global_address

/*---------------------------------------------------------------------------*/static uip_ipaddr_t *set_global_address(void){  static uip_ipaddr_t ipaddr;  int i;  uint8_t state;  uip_ip6addr(&ipaddr, 0xaaaa, 0, 0, 0, 0, 0, 0, 0);  uip_ds6_set_addr_iid(&ipaddr, &uip_lladdr);  uip_ds6_addr_add(&ipaddr, 0, ADDR_AUTOCONF);  printf("IPv6 addresses: ");  for(i = 0; i < UIP_DS6_ADDR_NB; i++) {    state = uip_ds6_if.addr_list[i].state;    if(uip_ds6_if.addr_list[i].isused &&       (state == ADDR_TENTATIVE || state == ADDR_PREFERRED)) {      uip_debug_ipaddr_print(&uip_ds6_if.addr_list[i].ipaddr);      printf("/n");      if(state == ADDR_TENTATIVE) {        uip_ds6_if.addr_list[i].state = ADDR_PREFERRED;      }    }  }  return &ipaddr;}
开发者ID:lab-anaws,项目名称:lab2,代码行数:27,


示例7: set_global_address

static voidset_global_address(void){  uip_ipaddr_t ipaddr;  uip_ip6addr(&ipaddr, 0xfd00, 0, 0, 0, 0, 0, 0, 0);  uip_ds6_set_addr_iid(&ipaddr, &uip_lladdr);  uip_ds6_addr_add(&ipaddr, 0, ADDR_AUTOCONF);}
开发者ID:1847123212,项目名称:contiki,代码行数:8,


示例8: set_node_addresses

voidset_node_addresses(void){  uip_ipaddr_t ipaddr;  uip_ip6addr(&ipaddr, 0xaaaa,0,0,0,0,0,0,0);  uip_ds6_set_addr_iid(&ipaddr, &uip_lladdr);  uip_ds6_addr_add(&ipaddr, 0, ADDR_AUTOCONF);}
开发者ID:okoye,项目名称:Puppet-OS,代码行数:8,


示例9: set_global_address

/*-----------------------------------------------------------------------*/static void set_global_address(void){	uip_ipaddr_t ipaddr;	uip_ip6addr(&ipaddr, 0xaaaa, 0, 0, 0, 0, 0, 0, 0);	uip_ds6_set_addr_iid(&ipaddr, &uip_lladdr);	uip_ds6_addr_add(&ipaddr, 0, ADDR_AUTOCONF);	/* set sink address */	uip_ip6addr(&sink_ipaddr, 0xaaaa, 0, 0, 0, 0, 0, 0, 1);}
开发者ID:RanHuang,项目名称:nick-project-contiki,代码行数:10,


示例10: set_global_address

static voidset_global_address(void){  uip_ipaddr_t ipaddr;  uip_ip6addr(&ipaddr, UIP_DS6_DEFAULT_PREFIX, 0, 0, 0, 0, 0, 0, 0);  uip_ds6_set_addr_iid(&ipaddr, &uip_lladdr);  uip_ds6_addr_add(&ipaddr, 0, ADDR_AUTOCONF);}
开发者ID:PureEngineering,项目名称:contiki,代码行数:9,


示例11: set_prefix_64

/*---------------------------------------------------------------------------*/voidset_prefix_64(uip_ipaddr_t *prefix_64){  uip_ipaddr_t ipaddr;  memcpy(&prefix, prefix_64, 16);  memcpy(&ipaddr, prefix_64, 16);  prefix_set = 1;  uip_ds6_set_addr_iid(&ipaddr, &uip_lladdr);  uip_ds6_addr_add(&ipaddr, 0, ADDR_AUTOCONF);}
开发者ID:CaptFrank,项目名称:contiki-stm32w,代码行数:11,


示例12: uip_ds6_init

/*---------------------------------------------------------------------------*/voiduip_ds6_init(void){  uip_ds6_route_init();  PRINTF("Init of IPv6 data structures/n");  PRINTF("%u neighbors/n%u default routers/n%u prefixes/n%u routes/n%u unicast addresses/n%u multicast addresses/n%u anycast addresses/n",     UIP_DS6_NBR_NB, UIP_DS6_DEFRT_NB, UIP_DS6_PREFIX_NB, UIP_DS6_ROUTE_NB,     UIP_DS6_ADDR_NB, UIP_DS6_MADDR_NB, UIP_DS6_AADDR_NB);  memset(uip_ds6_nbr_cache, 0, sizeof(uip_ds6_nbr_cache));  //  memset(uip_ds6_defrt_list, 0, sizeof(uip_ds6_defrt_list));  memset(uip_ds6_prefix_list, 0, sizeof(uip_ds6_prefix_list));  memset(&uip_ds6_if, 0, sizeof(uip_ds6_if));  //  memset(uip_ds6_routing_table, 0, sizeof(uip_ds6_routing_table));  uip_ds6_addr_size = sizeof(struct uip_ds6_addr);  uip_ds6_netif_addr_list_offset = offsetof(struct uip_ds6_netif, addr_list);  /* Set interface parameters */  uip_ds6_if.link_mtu = UIP_LINK_MTU;  uip_ds6_if.cur_hop_limit = UIP_TTL;  uip_ds6_if.base_reachable_time = UIP_ND6_REACHABLE_TIME;  uip_ds6_if.reachable_time = uip_ds6_compute_reachable_time();  uip_ds6_if.retrans_timer = UIP_ND6_RETRANS_TIMER;  uip_ds6_if.maxdadns = UIP_ND6_DEF_MAXDADNS;  /* Create link local address, prefix, multicast addresses, anycast addresses */  uip_create_linklocal_prefix(&loc_fipaddr);#if UIP_CONF_ROUTER  uip_ds6_prefix_add(&loc_fipaddr, UIP_DEFAULT_PREFIX_LEN, 0, 0, 0, 0);#else /* UIP_CONF_ROUTER */  uip_ds6_prefix_add(&loc_fipaddr, UIP_DEFAULT_PREFIX_LEN, 0);#endif /* UIP_CONF_ROUTER */  uip_ds6_set_addr_iid(&loc_fipaddr, &uip_lladdr);  uip_ds6_addr_add(&loc_fipaddr, 0, ADDR_AUTOCONF);  uip_create_linklocal_allnodes_mcast(&loc_fipaddr);  uip_ds6_maddr_add(&loc_fipaddr);#if UIP_CONF_ROUTER  uip_create_linklocal_allrouters_mcast(&loc_fipaddr);  uip_ds6_maddr_add(&loc_fipaddr);#if UIP_ND6_SEND_RA  stimer_set(&uip_ds6_timer_ra, 2);     /* wait to have a link local IP address */#endif /* UIP_ND6_SEND_RA */#else /* UIP_CONF_ROUTER */  etimer_set(&uip_ds6_timer_rs,             random_rand() % (UIP_ND6_MAX_RTR_SOLICITATION_DELAY *                              CLOCK_SECOND));#endif /* UIP_CONF_ROUTER */  etimer_set(&uip_ds6_timer_periodic, UIP_DS6_PERIOD);  return;}
开发者ID:chanderbgoel,项目名称:contiki,代码行数:54,


示例13: set_global_address

static void set_global_address(void){    uip_ipaddr_t ipaddr;    uip_ip6addr(&ipaddr, 0xaaaa, 0, 0, 0, 0, 0, 0, 0);    uip_ds6_set_addr_iid(&ipaddr, &uip_lladdr);    /*where is the uip_lladdr defined?*/    uip_ds6_addr_add(&ipaddr, 0, ADDR_AUTOCONF);    /* Mode 2 - 16 bits inline */    /* Set sink address. What if more than one sink? */    uip_ip6addr(&sink_ipaddr, 0xaaaa, 0, 0, 0, 0, 0x00ff, 0xfe00, 1);}
开发者ID:RanHuang,项目名称:nick-project-contiki,代码行数:12,


示例14: PROCESS_THREAD

/*---------------------------------------------------------------------------*/PROCESS_THREAD(example_servreg_server_process, ev, data){  uip_ipaddr_t ipaddr;  PROCESS_BEGIN();  /* Set a global address. */  uip_ip6addr(&ipaddr, UIP_DS6_DEFAULT_PREFIX, 0, 0, 0, 0, 0, 0, 0);  uip_ds6_set_addr_iid(&ipaddr, &uip_lladdr);  uip_ds6_addr_add(&ipaddr, 0, ADDR_AUTOCONF);  servreg_hack_register(188, &ipaddr);  PROCESS_END();}
开发者ID:13416795,项目名称:contiki,代码行数:15,


示例15: set_global_address

static voidset_global_address(void){    uip_ipaddr_t ipaddr;    uip_ip6addr(&ipaddr, 0xaaaa, 0, 0, 0, 0, 0, 0, 0);    uip_ds6_set_addr_iid(&ipaddr, &uip_lladdr);    uip_ds6_addr_add(&ipaddr, 0, ADDR_AUTOCONF);    /* set server address */    uip_ip6addr(&server_ipaddr, 0xaaaa, 0, 0, 0, 0, 0, 0, 1);    //uip_ip6addr(&server_ipaddr, 0xfe80, 0, 0, 0,0x0212, 0x7401, 1, 0x0101);}
开发者ID:alirezapourbahram,项目名称:IoT-Wormhole-IDS,代码行数:14,


示例16: PROCESS_THREAD

/*---------------------------------------------------------------------------*/PROCESS_THREAD(unicast_sender_process, ev, data){  static struct etimer periodic_timer;  static struct etimer send_timer;  uip_ipaddr_t global_ipaddr;  PROCESS_BEGIN();  printf("App: %u starting/n", node_id);  uip_ip6addr(&root_ipaddr, 0xaaaa, 0, 0, 0, 0, 0, 0, 1);  if(node_id == ROOT_ID) {    memcpy(&global_ipaddr, &root_ipaddr, 16);    uip_ds6_addr_add(&global_ipaddr, 0, ADDR_MANUAL);    rpl_dag_t *dag = rpl_set_root(RPL_DEFAULT_INSTANCE, &global_ipaddr);    rpl_set_prefix(dag, &global_ipaddr, 64);  } else {    uip_ip6addr(&global_ipaddr, 0xaaaa, 0, 0, 0, 0, 0, 0, 0);    uip_ds6_set_addr_iid(&global_ipaddr, &uip_lladdr);    uip_ds6_addr_add(&global_ipaddr, 0, ADDR_AUTOCONF);  }  orpl_init(&global_ipaddr, node_id == ROOT_ID, 1);  simple_udp_register(&unicast_connection, UDP_PORT,                      NULL, UDP_PORT, receiver);  if(node_id == ROOT_ID) {    NETSTACK_RDC.off(1);  } else {    etimer_set(&periodic_timer, SEND_INTERVAL);    while(1) {      etimer_set(&send_timer, random_rand() % (SEND_INTERVAL));      PROCESS_WAIT_UNTIL(etimer_expired(&send_timer));      if(orpl_current_edc() != 0xffff) {        app_send_to(ROOT_ID);      } else {        printf("App: not in DODAG/n");      }      PROCESS_WAIT_UNTIL(etimer_expired(&periodic_timer));      etimer_reset(&periodic_timer);    }  }  PROCESS_END();}
开发者ID:Johnyren,项目名称:orpl,代码行数:49,


示例17: net_init

/*---------------------------------------------------------------------------*/static voidnet_init(uip_ipaddr_t *br_prefix){  uip_ipaddr_t global_ipaddr;  if(br_prefix) { /* We are RPL root. Will be set automatically                     as TSCH pan coordinator via the tsch-rpl module */    memcpy(&global_ipaddr, br_prefix, 16);    uip_ds6_set_addr_iid(&global_ipaddr, &uip_lladdr);    uip_ds6_addr_add(&global_ipaddr, 0, ADDR_AUTOCONF);    rpl_set_root(RPL_DEFAULT_INSTANCE, &global_ipaddr);    rpl_set_prefix(rpl_get_any_dag(), br_prefix, 64);    rpl_repair_root(RPL_DEFAULT_INSTANCE);  }  NETSTACK_MAC.on();}
开发者ID:matzTada,项目名称:contiki,代码行数:18,


示例18: set_prefix_64

/*---------------------------------------------------------------------------*/voidset_prefix_64(uip_ipaddr_t *prefix_64){  rpl_dag_t *dag;  uip_ipaddr_t ipaddr;  memcpy(&prefix, prefix_64, 16);  memcpy(&ipaddr, prefix_64, 16);  prefix_set = 1;  uip_ds6_set_addr_iid(&ipaddr, &uip_lladdr);  uip_ds6_addr_add(&ipaddr, 0, ADDR_AUTOCONF);  dag = rpl_set_root(RPL_DEFAULT_INSTANCE, &ipaddr);  if(dag != NULL) {    rpl_set_prefix(dag, &prefix, 64);    PRINTF("created a new RPL dag/n");  }}
开发者ID:jamella,项目名称:MyRepository,代码行数:18,


示例19: rpl_link_neighbor_callback

static voidrpl_link_neighbor_callback(const rimeaddr_t *addr, int known, int etx){  uip_ipaddr_t ipaddr;  rpl_dag_t *dag;  rpl_parent_t *parent;  uip_ip6addr(&ipaddr, 0xfe80, 0, 0, 0, 0, 0, 0, 0);  uip_ds6_set_addr_iid(&ipaddr, (uip_lladdr_t *)addr);  PRINTF("RPL: Neighbor ");  PRINT6ADDR(&ipaddr);  PRINTF(" is %sknown. ETX = %u/n", known ? "" : "no longer ", NEIGHBOR_INFO_FIX2ETX(etx));  dag = rpl_get_dag(RPL_DEFAULT_INSTANCE);  if(dag == NULL) {    return;  }  parent = rpl_find_parent(dag, &ipaddr);  if(parent == NULL) {    if(!known) {      PRINTF("RPL: Deleting routes installed by DAOs received from ");      PRINT6ADDR(&ipaddr);      PRINTF("/n");      uip_ds6_route_rm_by_nexthop(&ipaddr);    }    return;  }  /* Trigger DAG rank recalculation. */  parent->updated = 1;  parent->link_metric = etx;  if(dag->of->parent_state_callback != NULL) {    dag->of->parent_state_callback(parent, known, etx);  }  if(!known) {    PRINTF("RPL: Removing parent ");    PRINT6ADDR(&parent->addr);    PRINTF(" because of bad connectivity (ETX %d)/n", etx);    parent->rank = INFINITE_RANK;  }}
开发者ID:lepton-distribution,项目名称:lepton,代码行数:45,


示例20: start_uip6

static voidstart_uip6(void){  NETSTACK_NETWORK.init();#ifndef WITH_SLIP_RADIO  process_start(&tcpip_process, NULL);#else#if WITH_SLIP_RADIO == 0  process_start(&tcpip_process, NULL);#endif#endif /* WITH_SLIP_RADIO */#if DEBUG  PRINTF("Tentative link-local IPv6 address ");  {    uip_ds6_addr_t *lladdr;    int i;    lladdr = uip_ds6_get_link_local(-1);    for(i = 0; i < 7; ++i) {      PRINTF("%02x%02x:", lladdr->ipaddr.u8[i * 2],             lladdr->ipaddr.u8[i * 2 + 1]);      /* make it hardcoded... */    }    lladdr->state = ADDR_AUTOCONF;    PRINTF("%02x%02x/n", lladdr->ipaddr.u8[14], lladdr->ipaddr.u8[15]);  }#endif /* DEBUG */  if(!UIP_CONF_IPV6_RPL) {    uip_ipaddr_t ipaddr;    int i;    uip_ip6addr(&ipaddr, 0xaaaa, 0, 0, 0, 0, 0, 0, 0);    uip_ds6_set_addr_iid(&ipaddr, &uip_lladdr);    uip_ds6_addr_add(&ipaddr, 0, ADDR_TENTATIVE);    PRINTF("Tentative global IPv6 address ");    for(i = 0; i < 7; ++i) {      PRINTF("%02x%02x:",             ipaddr.u8[i * 2], ipaddr.u8[i * 2 + 1]);    }    PRINTF("%02x%02x/n",           ipaddr.u8[7 * 2], ipaddr.u8[7 * 2 + 1]);  }}
开发者ID:rfuentess,项目名称:contiki,代码行数:45,


示例21: set_prefix_64

/* Set our prefix when we receive one over SLIP */voidset_prefix_64(uip_ipaddr_t *prefix_64) {  rpl_dag_t *dag;  uip_ipaddr_t ipaddr;  memcpy(&ipaddr, prefix_64, 16);  prefix_set = 1;  uip_ds6_set_addr_iid(&ipaddr, &uip_lladdr);  uip_ds6_addr_add(&ipaddr, 0, ADDR_AUTOCONF);  /* Become root of a new DODAG with ID our global v6 address */  dag = rpl_set_root(RPL_DEFAULT_INSTANCE, &ipaddr);  if(dag != NULL) {    rpl_set_prefix(dag, &ipaddr, 64);    PRINTF("Created a new RPL dag with ID: ");    PRINT6ADDR(&dag->dag_id);    PRINTF("/n");  }}
开发者ID:GDanii,项目名称:contiki-mirror-MICAz-IPv6,代码行数:19,


示例22: set_global_address

/*---------------------------------------------------------------------------*/static voidset_global_address(void){  uip_ipaddr_t ipaddr;  uip_ip6addr(&ipaddr, 0xaaaa, 0, 0, 0, 0, 0, 0, 0);  uip_ds6_set_addr_iid(&ipaddr, &uip_lladdr);  uip_ds6_addr_add(&ipaddr, 0, ADDR_AUTOCONF); #if 0   uip_ip6addr(&server_ipaddr, 0xaaaa, 0, 0, 0, 0, 0, 0, 1);#elif 1  uip_ip6addr(&server_ipaddr, 0xaaaa, 0, 0, 0, 0, 0x00ff, 0xfe00, 1);#else/* Mode 3 - derived from server link-local (MAC) address */  uip_ip6addr(&server_ipaddr, 0xaaaa, 0, 0, 0, 0x0250, 0xc2ff, 0xfea8, 0xcd1a); //redbee-econotag#endif}
开发者ID:PseudoAj,项目名称:IoTCodeRecipes,代码行数:19,


示例23: init_net

voidinit_net(void){  uip_ipaddr_t ipaddr;  uip_ip6addr(&ipaddr, 0xaaaa, 0, 0, 0, 0, 0, 0, 0);  /* load the mac address */  memcpy(uip_lladdr.addr, ieee_get_mac(), sizeof(uip_lladdr.addr));#if UIP_CONF_ROUTER  uip_ds6_prefix_add(&ipaddr, UIP_DEFAULT_PREFIX_LEN, 0, 0, 0, 0);#else /* UIP_CONF_ROUTER */  uip_ds6_prefix_add(&ipaddr, UIP_DEFAULT_PREFIX_LEN, 0);#endif /* UIP_CONF_ROUTER */  uip_ds6_set_addr_iid(&ipaddr, &uip_lladdr);  uip_ds6_addr_add(&ipaddr, 0, ADDR_AUTOCONF);  netstack_init();}
开发者ID:hopfgarten,项目名称:contiki-jn51xx,代码行数:19,


示例24: PROCESS_THREAD

/*---------------------------------------------------------------------------*/PROCESS_THREAD(ipv6_process, ev, data){  PROCESS_BEGIN();  // Set the local address  uip_ip6addr(&my_addr, 0, 0, 0, 0, 0, 0, 0, 0);  uip_ds6_set_addr_iid(&my_addr, &uip_lladdr);  uip_ds6_addr_add(&my_addr, 0, ADDR_MANUAL);  // Setup the destination address  uiplib_ipaddrconv(RECEIVER_ADDR, &dest_addr);  // Add a "neighbor" for our custom route  // Setup the default broadcast route  uiplib_ipaddrconv(ADDR_ALL_ROUTERS, &bcast_ipaddr);  uip_ds6_nbr_add(&bcast_ipaddr, &bcast_lladdr, 0, NBR_REACHABLE);  uip_ds6_route_add(&dest_addr, 128, &bcast_ipaddr);  // Setup a udp "connection"  client_conn = udp_new(&dest_addr, UIP_HTONS(RECEIVER_PORT), NULL);  if (client_conn == NULL) {    // Too many udp connections    // not sure how to exit...stupid contiki  }  udp_bind(client_conn, UIP_HTONS(3001));  etimer_set(&periodic_timer, 10*CLOCK_SECOND);  while(1) {    PROCESS_YIELD();    if (etimer_expired(&periodic_timer)) {      send_handler(ev, data);      etimer_restart(&periodic_timer);    } else if (ev == tcpip_event) {      recv_handler();    }  }  PROCESS_END();}
开发者ID:kevinxusz,项目名称:monjolo,代码行数:44,


示例25: PROCESS_THREAD

PROCESS_THREAD(udp_server_process, ev, data){  PROCESS_BEGIN();  static uip_ipaddr_t ipaddr;  rpl_dag_t *dag;  int i;  uint8_t state;  static struct etimer timer;  static struct simple_udp_connection connection;  static int packet = 0;  uip_ip6addr(&ipaddr, 0xaaaa, 0, 0, 0, 0, 0, 0, 0);  uip_ds6_set_addr_iid(&ipaddr, &uip_lladdr);  uip_ds6_addr_add(&ipaddr, 0, ADDR_AUTOCONF);   //uip_ip6addr(&ipaddr, 0xaaaa, 0, 0, 0, 0, 0, 0, 0);  //dag = rpl_set_root(RPL_DEFAULT_INSTANCE, (uip_ip6addr_t*) &ipaddr);  //rpl_set_prefix(dag, &ipaddr, 64);  simple_udp_register(&connection, UDP_PORT-1, NULL, UDP_PORT, receiver);  printf("IPv6 addresses: ");  for(i = 0; i < UIP_DS6_ADDR_NB; i++) {    state = uip_ds6_if.addr_list[i].state;    if(uip_ds6_if.addr_list[i].isused &&       (state == ADDR_TENTATIVE        || state == ADDR_PREFERRED)) {            uip_debug_ipaddr_print(               &uip_ds6_if.addr_list[i].ipaddr);            printf("/n");    }  }  printf("UDP server started/n");  etimer_set(&timer, CLOCK_SECOND >> 1);  while(1) {    PROCESS_WAIT_EVENT_UNTIL(etimer_expired(&timer));    etimer_restart(&timer);    leds_toggle(LEDS_GREEN);  }  PROCESS_END();}
开发者ID:Cremesis,项目名称:IoT,代码行数:42,


示例26: slip_input_callback

/*---------------------------------------------------------------------------*/static voidslip_input_callback(void){  unsigned char i;  unsigned short chek_summ,chek_summ_recv;  if (strncmp(uip_buf, "AdressTarget", 12) == 0){    chek_summ =chksum(chek_summ,(uint8_t*)uip_buf,16);    chek_summ_recv = uip_buf[16];    chek_summ_recv |= ((uint16_t)uip_buf[17])<<8;    if (chek_summ_recv==chek_summ){      //set new IPv6 addres      uip_ipaddr_t ipaddr;      uip_lladdr_t lladdr;      lladdr.addr[0] = 0x00;  		lladdr.addr[1] = 0x12;  		lladdr.addr[2] = 0x4b;  		lladdr.addr[3] = 0x00;      lladdr.addr[4] = uip_buf[12];      lladdr.addr[5] = uip_buf[13];      lladdr.addr[6] = uip_buf[14];      lladdr.addr[7] = uip_buf[15];      for (i=0;i<4;i++){        if (uip_buf[12+i]!= uip_ds6_if.addr_list[0].ipaddr.u8[12+i])          break;      }      if (i<4){        uip_ds6_addr_rm(&uip_ds6_if.addr_list[0]);        uip_ip6addr(&ipaddr, 0x2001, 0x0db8, 0, 0x0212, 0, 0, 0, 0);        uip_ds6_set_addr_iid(&ipaddr, &lladdr);        uip_ds6_addr_add(&ipaddr, 0, ADDR_AUTOCONF);        uip_buf[12] = uip_ds6_if.addr_list[0].ipaddr.u8[12];        uip_buf[13] = uip_ds6_if.addr_list[0].ipaddr.u8[13];        uip_buf[14] = uip_ds6_if.addr_list[0].ipaddr.u8[14];        uip_buf[15] = uip_ds6_if.addr_list[0].ipaddr.u8[15];        slip_write(uip_buf, 16);        print_local_addresses();      }    }  } // PRINTF("SIN: %u/n", uip_len);}
开发者ID:shomagan,项目名称:contiki_6to4,代码行数:43,


示例27: create_dag

voidcreate_dag(){  rpl_dag_t *dag;  uip_ip6addr(&ipaddr, 0xaaaa, 0, 0, 0, 0, 0, 0, 0);  uip_ds6_set_addr_iid(&ipaddr, &uip_lladdr);  uip_ds6_addr_add(&ipaddr, 0, ADDR_AUTOCONF);  print_local_addresses();  dag = rpl_set_root(RPL_DEFAULT_INSTANCE, &uip_ds6_get_global(ADDR_PREFERRED)->ipaddr);  if(dag != NULL) {    uip_ip6addr(&ipaddr, 0xaaaa, 0, 0, 0, 0, 0, 0, 0);    rpl_set_prefix(dag, &ipaddr, 64);    PRINTF("Created a new RPL dag with ID: ");    PRINT6ADDR(&dag->dag_id);    PRINTF("/n");  }}
开发者ID:Ammar-85,项目名称:contiki-arduino,代码行数:20,


示例28: set_global_address

static voidset_global_address(void){  uip_ipaddr_t ipaddr;  int i;  uint8_t state;  uip_ip6addr(&ipaddr, 0xaaaa, 0, 0, 0, 0, 0, 0, 0);  uip_ds6_set_addr_iid(&ipaddr, &uip_lladdr);  uip_ds6_addr_add(&ipaddr, 0, ADDR_AUTOCONF);  memcpy(((uint8_t *)&global_extndaddr),&(ipaddr.u8[8]),NATIVE_ADDR_SIZE);  printf("/r/nIPv6 addresses: ");  for(i = 0; i < UIP_DS6_ADDR_NB; i++) {    state = uip_ds6_if.addr_list[i].state;    if(uip_ds6_if.addr_list[i].isused &&       (state == ADDR_TENTATIVE || state == ADDR_PREFERRED)) {      uip_debug_ipaddr_print(&uip_ds6_if.addr_list[i].ipaddr);      printf("/n");    }  }}
开发者ID:songjw0820,项目名称:contiki_atmel,代码行数:21,


示例29: PROCESS_THREAD

/*---------------------------------------------------------------------------*/PROCESS_THREAD(sender_process, ev, data){  PROCESS_BEGIN();  static uip_ipaddr_t ipaddr, unicastaddr;  int i;  uint8_t state;  static struct etimer timer;  static struct simple_udp_connection connection;  static char *packet = "Supertest";  uip_ip6addr(&ipaddr, 0xaaaa, 0, 0, 0, 0, 0, 0, 0);  uip_ds6_set_addr_iid(&ipaddr, &uip_lladdr);  uip_ds6_addr_add(&ipaddr, 0, ADDR_AUTOCONF);   uip_ip6addr(&unicastaddr, 0xfe80, 0, 0, 0, 0xc30c, 0, 0, 2);  simple_udp_register(&connection, UDP_PORT, NULL, UDP_PORT, NULL);  printf("IPv6 addresses: ");  for(i = 0; i < UIP_DS6_ADDR_NB; i++) {    state = uip_ds6_if.addr_list[i].state;    if(uip_ds6_if.addr_list[i].isused &&       (state == ADDR_TENTATIVE        || state == ADDR_PREFERRED)) {            uip_debug_ipaddr_print(               &uip_ds6_if.addr_list[i].ipaddr);            printf("/n");    }  }  etimer_set(&timer, CLOCK_SECOND);  while(1) {    printf("STO MANDANDO UNICAST/n");    simple_udp_sendto(&connection, packet, strlen(packet)+1, &unicastaddr);    PROCESS_WAIT_EVENT_UNTIL(etimer_expired(&timer));    etimer_restart(&timer);  }  PROCESS_END();}
开发者ID:Cremesis,项目名称:IoT,代码行数:40,



注:本文中的uip_ds6_set_addr_iid函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ uip_init函数代码示例
C++ uip_ds6_list_loop函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。