Ignore:
Timestamp:
Nov 18, 2016, 2:58:30 PM (7 years ago)
Author:
coas-nagasima
Message:

uIPを更新
プロジェクトファイルを更新

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uKadecot/trunk/ecnl_ssp/echonet_uip_task.c

    r158 r262  
    176176        PT_BEGIN(&pt);
    177177
    178         uip_ipaddr(localhost, 127, 0, 0, 1);
    179         uip_ipaddr(multicast, 224, 0, 23, 0);
    180         uip_ipaddr(zeroaddr, 0, 0, 0, 0);
    181         uip_ipaddr(ccep.ripaddr, 0, 0, 0, 0);
     178        uip_ipaddr(&localhost, 127, 0, 0, 1);
     179        uip_ipaddr(&multicast, 224, 0, 23, 0);
     180        uip_ipaddr(&zeroaddr, 0, 0, 0, 0);
     181        uip_ipaddr(&ccep.ripaddr, 0, 0, 0, 0);
    182182        ccep.rport = 0;
    183183        ccep.lport = 3610;
    184184        ccep.callback = callback_nblk_udp;
    185185
    186         uip_gethostaddr(a_src);
     186        uip_gethostaddr(&a_src);
    187187        ECN_DBG_PUT("[UDP TSK:%d] started, IP Address: %s ether_max_len: %u",
    188188                ecn_udp_taskid,
    189189                ip2str(NULL, a_src),
    190190                UIP_BUFSIZE);
    191         uip_ipaddr_copy(enodadrb_table[ENOD_LOCAL_ID].ipaddr, a_src);
     191        uip_ipaddr_copy((T_IN4_ADDR *)&enodadrb_table[ENOD_LOCAL_ID].ipaddr, &a_src);
    192192
    193193        UDP_CEPID = udp_acre_cep(&ccep);
     
    438438        static SYSTIM a_prev, a_now;
    439439
    440         uip_ipaddr(a_dst.ipaddr, 0,0,0,0);
     440        uip_ipaddr(&a_dst.ipaddr, 0,0,0,0);
    441441        a_dst.portno = 0;
    442442        /* 送信先IPアドレス */
     
    455455                        ECN_DBG_PUT("[UDP TSK] _ecn_fbs_get_data() result = %d:%s", a_ret, itron_strerror(a_ret));
    456456                }
    457                 else if(uip_ipaddr_cmp(a_dst.ipaddr, localhost)) {
     457                else if(uip_ipaddr_cmp(&a_dst.ipaddr, &localhost)) {
    458458                        /* 送信先が127.0.0.1 → mbxに転送 */
    459459                        ECN_DBG_PUT("redirect ecn_udp_mailboxid → ecn_svc_mailboxid (esv:0x%02X)",
     
    629629        int                     i;
    630630
    631         if (uip_ipaddr_cmp(ipaddr, localhost))
     631        if (uip_ipaddr_cmp(&ipaddr, &localhost))
    632632                return ENOD_LOCAL_ID;
    633         if (uip_ipaddr_cmp(ipaddr, multicast))
     633        if (uip_ipaddr_cmp(&ipaddr, &multicast))
    634634                return ENOD_MULTICAST_ID;
    635635
     
    638638                if (!ea->inuse)
    639639                        continue;
    640                 if (!uip_ipaddr_cmp(ea->ipaddr, ipaddr))
     640                if (!uip_ipaddr_cmp((T_IN4_ADDR *)&ea->ipaddr, &ipaddr))
    641641                        continue;
    642642
     
    652652                if ((i - ENOD_REMOTE_ID + 1) >= tnum_enodid)
    653653                        break;
    654                 if (uip_ipaddr_cmp(ea->ipaddr, zeroaddr))
     654                if (uip_ipaddr_cmp((T_IN4_ADDR *)&ea->ipaddr, &zeroaddr))
    655655                        continue;
    656                 if (!ECHONET_NODE_MATCH(&eobjcb_table[i - ENOD_REMOTE_ID + 1], edata, ipaddr, portno))
     656                if (!ECHONET_NODE_MATCH(&eobjcb_table[i - ENOD_REMOTE_ID + 1], edata, &ipaddr, portno))
    657657                        continue;
    658658
    659659                /* 対応するリモートノードがあればIPアドレスを設定 */
    660                 uip_ipaddr_copy(ea->ipaddr, ipaddr);
     660                uip_ipaddr_copy((T_IN4_ADDR *)&ea->ipaddr, &ipaddr);
    661661
    662662                ECN_CAP_PUT("udp_get_id(): enod-found remote(%d) = %s",
     
    671671
    672672                ea->inuse = true;
    673                 uip_ipaddr_copy(ea->ipaddr, ipaddr);
     673                uip_ipaddr_copy((T_IN4_ADDR *)&ea->ipaddr, &ipaddr);
    674674
    675675                ECN_CAP_PUT("udp_get_id(): empty-found remote(%d) = %s",
     
    695695        if (fa_enodid == ENOD_MULTICAST_ID) {
    696696                /* targetがENOD_MULTICAST_IDの場合、マルチキャストを行う */
    697                 uip_ipaddr_copy(fp_ipep->ipaddr, multicast);
     697                uip_ipaddr_copy(&fp_ipep->ipaddr, &multicast);
    698698                return 0;       /* ok */
    699699        }
     
    701701        if (fa_enodid < ENOD_REMOTE_ID) {
    702702                /* targetが未定義・LOCAL・APIの場合、ローカル配送を行う */
    703                 uip_ipaddr_copy(fp_ipep->ipaddr, localhost);
     703                uip_ipaddr_copy(&fp_ipep->ipaddr, &localhost);
    704704                return 0;       /* ok */
    705705        }
     
    712712                return -1;      /* NG */
    713713
    714         if (uip_ipaddr_cmp(ea->ipaddr, zeroaddr))
     714        if (uip_ipaddr_cmp((T_IN4_ADDR *)&ea->ipaddr, &zeroaddr))
    715715                return -1;      /* NG */
    716716
    717         uip_ipaddr_copy(fp_ipep->ipaddr, ea->ipaddr);
     717        uip_ipaddr_copy(&fp_ipep->ipaddr, (T_IN4_ADDR *)&ea->ipaddr);
    718718        return 0;       /* ok */
    719719}
Note: See TracChangeset for help on using the changeset viewer.