libra@SVN:~/openwrt_mtk_4G/MZ391_4G$ ls
make.sh mz391_4g mz391_4g.c
libra@SVN:~/openwrt_mtk_4G/MZ391_4G$ cat mz391_4g.c
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
#include <strings.h>
#include <sys/types.h>
#include <arpa/inet.h>
#include <pthread.h>
#include <fcntl.h>
#include <sys/stat.h>
#include <signal.h>
#include <sys/statfs.h>
#include <mntent.h>
#include <sys/time.h>
#include <sched.h>
#include <errno.h>
#include <sys/stat.h>
#include <termios.h>
#include <time.h>
#include <syslog.h>
#include <stdarg.h>
int write_log(char *p)
{
FILE *fp;
if((fp=fopen("/tmp/mz391.conf","a"))==NULL)
{
printf("open /tmp/mz391.conf.conf file Fail,close!");
return -1;
}
fputs(p,fp);
fclose(fp);
return 0;
}
static int zw_system(char *command)
{
FILE *fp=NULL;
char result_buf[128]={0};
fp = popen(command, "r");
if (NULL == fp)
{
printf("popen ERR\n");
return -1;
}
while(fgets(result_buf, sizeof(result_buf), fp) != NULL)
{
}
pclose(fp);
return 0;
}
int get_mz391_info()
{
FILE *fp=NULL;
char result_buf[128]={0};
int info=-1;
fp = popen("/usr/bin/lsusb", "r");
if (NULL == fp)
{
printf("popen /usr/bin/lsusb ERR\n");
return -1;
}
while(fgets(result_buf, sizeof(result_buf), fp) != NULL)
{
if (strstr(result_buf,"19d2:0581") || strstr(result_buf,"19d2:1557&#