MT6735 PPPOE调试问题
时间:10-02
整理:3721RD
点击:
参考网上的帖子,rp-PPPoe移植到板子上了,在php?mod=tag&id=6090" target="_blank" class="relatedlink">Framework添加了pppoe的框架,settings部分也添加上去了。我现在在ubuntu架势了虚拟的pppoe服务器,在目标板子上敲打pppd pty "/system/bin/pppoe -I wlan0" user xxx password xxx ,执行netcfg,设备ppp0 出来了,并且能ping通,说明数据链路通了,现在框架那边出了点小问题。我上错误LOG:
D/PppoeSettings( 1575): user=peng ////////这部分是我在settings设置进去的信息
D/PppoeNetworkFactory( 850): setupPppoe:
D/PppoeNetworkFactory( 850): user=peng
D/PppoeNetworkFactory( 850): iface=wlan0
D/PppoeNetworkFactory( 850): dns1=202.96.128.166
D/PppoeNetworkFactory( 850): dns2=8.8.8.8
D/PppoeNetworkFactory( 850): password=12345678/////////////////JNI部分获取到上层传递过来的参数////////////////////////////////
D/android_pppoe_PppoeNative.cpp( 850): setupPppoeNative
D/android_pppoe_PppoeNative.cpp( 850): setprop ctl.start pppoe_setup:peng wlan0 no 202.96.128.166 8.8.8.8 12345678 NONE
///////////////////pppoe_setup/////////////////////////
I/pppoe_setup( 3644): -------------------PPPOE-------------------- JNI调用脚本的log,参数也设置对了
I/pppoe_setup( 3646): USER NAME: peng I/pppoe_setup( 3647): INTERFACE: wlan0
I/pppoe_setup( 3648): DEMAND: no
I/pppoe_setup( 3649): DNS1: 202.96.128.166
I/EMDLOGGER1( 695): MDL rate:4 KB/s, full count:0
I/pppoe_setup( 3650): DNS2: 8.8.8.8
I/pppoe_setup( 3651): PASSWORD:12345678
I/pppoe_setup( 3652): FIREWALL: NONE
I/pppoe_setup( 3653): Adjusting /data/misc/ppp/pppoe.conf
//执行star方法
startPppoeNative代码是这样的:
static jint startPppoeNative(JNIEnv* env, jobject clazz)
{
int attempt;
int err = 0;
char* prop = (char *)malloc(PROPERTY_VALUE_MAX);
LOGD("%s", __FUNCTION__);
if (property_set("ctl.start", "pppoe_start") < 0) {
LOGE("Failed to start pppoe_start");
err = -1;
goto end;
}
for (attempt = 300; attempt > 0; attempt--) {
property_get("net.pppoe.status", prop, "");
if (!strcmp(prop, "connected")) {
break;
}
usleep(100000); // 100 ms retry delay
}
if (attempt == 0) {
LOGE("%s: Timeout waiting for pppoe-start", __FUNCTION__);
err = -1;
goto end;
}
err = 0;
end:
free(prop);
return err;
}执行到这,超时了,发现一个错误I/pppoe_status( 3699): pppoe-status: Link is down (can't read pppoe PID file /data/misc/ppp/pppoe.conf-pppoe.pid.pppoe)应该是脚本上的错误,不知道你们对pppoe有研究过没,欢迎来讨论。
D/PppoeSettings( 1575): user=peng ////////这部分是我在settings设置进去的信息
D/PppoeNetworkFactory( 850): setupPppoe:
D/PppoeNetworkFactory( 850): user=peng
D/PppoeNetworkFactory( 850): iface=wlan0
D/PppoeNetworkFactory( 850): dns1=202.96.128.166
D/PppoeNetworkFactory( 850): dns2=8.8.8.8
D/PppoeNetworkFactory( 850): password=12345678/////////////////JNI部分获取到上层传递过来的参数////////////////////////////////
D/android_pppoe_PppoeNative.cpp( 850): setupPppoeNative
D/android_pppoe_PppoeNative.cpp( 850): setprop ctl.start pppoe_setup:peng wlan0 no 202.96.128.166 8.8.8.8 12345678 NONE
///////////////////pppoe_setup/////////////////////////
I/pppoe_setup( 3644): -------------------PPPOE-------------------- JNI调用脚本的log,参数也设置对了
I/pppoe_setup( 3646): USER NAME: peng I/pppoe_setup( 3647): INTERFACE: wlan0
I/pppoe_setup( 3648): DEMAND: no
I/pppoe_setup( 3649): DNS1: 202.96.128.166
I/EMDLOGGER1( 695): MDL rate:4 KB/s, full count:0
I/pppoe_setup( 3650): DNS2: 8.8.8.8
I/pppoe_setup( 3651): PASSWORD:12345678
I/pppoe_setup( 3652): FIREWALL: NONE
I/pppoe_setup( 3653): Adjusting /data/misc/ppp/pppoe.conf
//执行star方法
startPppoeNative代码是这样的:
static jint startPppoeNative(JNIEnv* env, jobject clazz)
{
int attempt;
int err = 0;
char* prop = (char *)malloc(PROPERTY_VALUE_MAX);
LOGD("%s", __FUNCTION__);
if (property_set("ctl.start", "pppoe_start") < 0) {
LOGE("Failed to start pppoe_start");
err = -1;
goto end;
}
for (attempt = 300; attempt > 0; attempt--) {
property_get("net.pppoe.status", prop, "");
if (!strcmp(prop, "connected")) {
break;
}
usleep(100000); // 100 ms retry delay
}
if (attempt == 0) {
LOGE("%s: Timeout waiting for pppoe-start", __FUNCTION__);
err = -1;
goto end;
}
err = 0;
end:
free(prop);
return err;
}执行到这,超时了,发现一个错误I/pppoe_status( 3699): pppoe-status: Link is down (can't read pppoe PID file /data/misc/ppp/pppoe.conf-pppoe.pid.pppoe)应该是脚本上的错误,不知道你们对pppoe有研究过没,欢迎来讨论。