1.打开su源码在system/extras/su/su.c的main函数开头增加密码判断,代码如下
char *rootPasswd = "xxxxxxxxxxx";
char enterPasswd [50] = {0};
fprintf(stdout,"Enter su password:\n");
while (1) {
char * ret = fgets(enterPasswd, sizeof(enterPasswd), stdin);
if (ret != NULL && strncmp(ret, rootPasswd, strlen(rootPasswd))
break;
} else {
fprintf(stdout, "Password is error,try again:\n");
}
}
2.这样就在每次输入su时提示输入密码。验证:编译模块,将编译好的su放到板子中,改权限 chmod 06755,然后运行试试。如果成功,再把编译好的su替换源码中的su,然后重新编译系统。注意的地方:修改了su.c后编译系统并不会将su执行文件放在/system/xbin,我的源码是需要替换这两个文件:这需要看自己系统的编译makefile确定。
device/rockchip/rk3288/xsu b/device/rockchip/rk3288/xsu和
device/rockchip/rk3288/su b/device/rockchip/rk3288/su