int main(int argc, char *argv[]) { assert(sizeof(Header) == 16); assert(sizeof(IndexEntry) == 24); parse_args(argc, argv); switch (arg_mode) { case LIST: open_archive(arg_archive); process_header(); list_entries(); close_archive(); break; case EXTRACT: open_archive(arg_archive); process_header(); extract_entries(); close_archive(); break; case CREATE: create_archive(arg_archive, (const char**)arg_files_begin, (const char**)arg_files_end, arg_com); break; } return 0; }
GList *proc_net_tcp_open() { proc_net_tcp_open_real(); char linebuf[MAX_LINE_SIZE]; int n; GList *list = NULL; /* NULL */ unsigned int size; char **elements = NULL; /* first line */ n = w_readline(tcpfd, linebuf, MAX_LINE_SIZE); if (n <= 0 || (elements = proc_net_parse_line(linebuf, &size)) == NULL) { return list; } get_title_index(elements, size); proc_net_parse_line_free(elements, size); /* entries */ while ((n = w_readline(tcpfd, linebuf, MAX_LINE_SIZE)) > 0) { elements = proc_net_parse_line(linebuf, &size); if (elements) { ProcNetTcpEntry *tcp = extract_entries(elements, size); list = g_list_append(list, tcp); proc_net_parse_line_free(elements, size); } } return list; }