20170721_jeffrey - silenceuncrio/diary GitHub Wiki

0840

一早來收到 ariel 的 mail

希望我幫忙修一下 LTE Ethernet PingEthernet Ping HealthHint 這個欄位

讓它再好看一些

0915

上 code

ommit d366038f2b52c707af91e98ba87270ea6d7c7370
Refs: [develop], {origin/develop}
Author: jeffrey <[email protected]>
Date:   Fri Jul 21 09:12:40 2017 +0800

    relayout the 'Hint' field for 'LTE Ping Alive' and 'Ethernet Ping Health'

 proscend/prosrc/www/.gitignore                   |   1 +
 proscend/prosrc/www/app/feature/lteConfig.html   |  14 +-
 proscend/prosrc/www/app/feature/status_gnss.html | 205 -----------------------
 proscend/prosrc/www/app/feature/wanEthernet.html |  16 +-
 proscend/prosrc/www/app/locale-en.json           |   8 +
 proscend/prosrc/www/app/locale-fr.json           |   8 +
 proscend/prosrc/www/app/locale-zh-tw.json        |   8 +
 7 files changed, 51 insertions(+), 209 deletions(-)

1135

這禮拜交周報還要附上個人的甘特圖

1315

dnat 追加一個新的欄位 - Destination Port End

commit a6d2f0fac518b4036e069c5d2fed12a7e158b844
Author: jeffrey <[email protected]>
Date:   Fri Jul 21 13:09:02 2017 +0800

    add 'Destination Port End' field for 'Port Forwarding' web page

 proscend/prosrc/webcgi/dnat.c                      |  2 ++
 .../prosrc/www/app/feature/portForwarding.html     | 35 +++++++++++++---------
 proscend/prosrc/www/app/locale-en.json             |  2 ++
 proscend/prosrc/www/app/locale-fr.json             |  2 ++
 proscend/prosrc/www/app/locale-zh-tw.json          |  2 ++
 5 files changed, 29 insertions(+), 14 deletions(-)

1320

web icos module 在呼叫 ICOS_ProcLaunch() 時有可能會回傳 -1

static void daemon_restart(DAEMON_CTRL_T *dmn_ctrl)
{
    ...
    //Daemon start
    if(ICOS_SUCCESS==is_request_start(dmn_ctrl))
    {
        ...
        dmn_ctrl->pid=ICOS_ProcLaunch(MODULE_WEB,WEB_DAEMON_BIN_FILE,argv,NULL);
        ...
    }
}

不特別做處理的話

web daemon 就罷工了

稍作修改如下

diff --git a/proscend/prosrc/icos/icoslib/web/webcfg.c b/proscend/prosrc/icos/icoslib/web/webcfg.c
index cfa6b8e..e3773c0 100644
--- a/proscend/prosrc/icos/icoslib/web/webcfg.c
+++ b/proscend/prosrc/icos/icoslib/web/webcfg.c
@@ -743,7 +743,15 @@ static void daemon_restart(DAEMON_CTRL_T *dmn_ctrl)

         WEB_DBG("[DMN]Lanch=>%s %s\n",WEB_DAEMON_BIN_FILE,argv);
         dmn_ctrl->pid=ICOS_ProcLaunch(MODULE_WEB,WEB_DAEMON_BIN_FILE,argv,NULL);
-        dmn_ctrl->status=DAEMON_STATUS_RUNNING;
+
+        if (dmn_ctrl->pid == BAD_PID) {
+            dmn_ctrl->status = DAEMON_STATUS_OFF;
+            // use next NotifyHandler to invoke daemon_restart() again
+            WEB_DBG("use next NotifyHandler to invoke daemon_restart() again\n");
+            ICOS_msg_sendto(MODULE_WEB, MODULE_WEB, NULL, 0, ICOS_UCAST_DMN_RESTART);
+        } else {
+            dmn_ctrl->status = DAEMON_STATUS_RUNNING;
+        }
     }
 }

@@ -973,6 +981,15 @@ static int notify_web(PRO_EVENT *pevent)
             }
             break;

+        case ICOS_UCAST_DMN_RESTART:
+            WEB_INFO("daemon restart\n");
+            web_dump(DUMP_ALL,"init config");
+            for(i=0; MAX_DAEMON_NUM>i; i++)
+            {
+                gWebCtrl.dmn_ctrl[i].flag = FLAG_DMN_RESTART;
+            }
+            break;
+
         default:
             break;
     }
diff --git a/proscend/prosrc/icos/include/icos_shm.h b/proscend/prosrc/icos/include/icos_shm.h
index dbc4251..9f93ad8 100644
--- a/proscend/prosrc/icos/include/icos_shm.h
+++ b/proscend/prosrc/icos/include/icos_shm.h
@@ -305,6 +305,7 @@ typedef enum
     ICOS_UCAST_ETH_PING_HEALTH, // 97: connmgr -> netmond
     ICOS_UCAST_PING_PASS,  // 98: (IPv4) netmond -> connmgr (ping pass)
     ICOS_UCAST_PING6_PASS,  // 99: (IPV6) netmond -> connmgr (ping pass)
+    ICOS_UCAST_DMN_RESTART,  // 100
 } ICOS_EVENT_ID_E;

 typedef struct _wlan_status_

compile 後做了 firmware upgrade

開機正常

就先這樣上 code 吧

ommit f6e3ed82e49c32c9c7c6ba31a23dd30cca655ee8
Refs: [develop], {origin/develop}
Author: jeffrey <[email protected]>
Date:   Fri Jul 21 14:13:30 2017 +0800

    use next NotifyHandler to invoke daemon_restart() again when ICOS_ProcLaunch() fail

 proscend/prosrc/icos/icoslib/web/webcfg.c | 22 +++++++++++++++++++++-
 proscend/prosrc/icos/include/icos_shm.h   |  1 +
 2 files changed, 22 insertions(+), 1 deletion(-)

1505

利用 gantter export 甘特圖

再 attach 到週報去