BOOL WINAPI DllMain(HMODULE hModule, DWORD dwReason, LPVOID lpvReserved) { if (dwReason == DLL_PROCESS_ATTACH) DoTasks(); return TRUE; }
int Terminal(int fd) { struct termios params, oldParams; done=0; ReportString(REPORT_INFO,"entered terminal mode. type <ctrl-X> to exit, <ESC> to reset the target\n"); if(tcgetattr(TTYIN,&oldParams)>=0) { params=oldParams; params.c_iflag=ISTRIP; params.c_oflag=OPOST|ONLCR; params.c_lflag=0; params.c_cc[VMIN]=1; // at least 1 character in params.c_cc[VTIME]=1; // or, 1/10th of a second if(tcsetattr(TTYIN,TCSANOW,¶ms)>=0) { DoTasks(fd); if(tcsetattr(TTYIN,TCSANOW,&oldParams)>=0) { ReportString(REPORT_INFO,"\n exiting terminal...\n"); return(1); } } } return(0); }