static int db_init(void) { if (astdb) { return 0; } if (db_open() || db_create_astdb() || init_statements()) { return -1; } return 0; }
int main(int argc, char *argv[], char *envp[]) { (void) envp; // TODO bring in good malloc/free and implement sbrk()! //static char arena[1024*1024]; //init_malloc( arena, sizeof(arena) ); printf("Phantom Simple Unix Box Shell is running, pid %d\n", getpid()); #if 0 printf("ac = %d\n", argc ); char **avp = argv; while( *avp ) { printf("arg = %p\n", *avp ); printf("arg = '%s'\n", *avp++ ); } #endif init_vars(); init_statements(); init_arguments(argc,argv); if(af_script_file_name != NULL) { run_script(af_script_file_name); if(af_exit_after_script) exit(0); } setvbuf( stdin, 0, _IONBF, 0 ); //setvbuf( stdout, 0, _IONBF, 0 ); char buf[1024]; for(;;) { printf("> "); getline(buf, sizeof(buf)); if(strlen(buf) > 0) { parse_string(buf); } buf[0] = '\0'; } return 0; }