示例#1
0
文件: hha.c 项目: maksverver/hha
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;
}
示例#2
0
文件: procnet.c 项目: wiiiky/yd
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;
}