Lines Matching refs:rec

305 	struct roff_mandb_rec rec;  in main()  local
335 memset(&rec, 0, sizeof(rec)); in main()
337 init_secbuffs(&rec); in main()
426 cleanup(&rec); in main()
427 free_secbuffs(&rec); in main()
433 update_db(db, mp, &rec); in main()
436 free_secbuffs(&rec); in main()
641 mandb_rec *rec, int *new_count, int *link_count, int *err_count) in update_existing_entry() argument
660 sqlite3_bind_int64(inner_stmt, idx, rec->device); in update_existing_entry()
662 sqlite3_bind_int64(inner_stmt, idx, rec->inode); in update_existing_entry()
664 sqlite3_bind_int64(inner_stmt, idx, rec->mtime); in update_existing_entry()
670 sqlite3_bind_int64(inner_stmt, idx, rec->device); in update_existing_entry()
672 sqlite3_bind_int64(inner_stmt, idx, rec->inode); in update_existing_entry()
674 sqlite3_bind_int64(inner_stmt, idx, rec->mtime); in update_existing_entry()
703 update_db(sqlite3 *db, struct mparse *mp, mandb_rec *rec) in update_db() argument
763 rec->device = row->device; in update_db()
764 rec->inode = row->inode; in update_db()
765 rec->mtime = row->mtime; in update_db()
796 update_existing_entry(db, file, md5sum, rec, in update_db()
821 rec->md5_hash = md5sum; in update_db()
822 rec->file_path = estrdup(file); in update_db()
824 begin_parse(file, mp, rec, fd); in update_db()
825 if (insert_into_db(db, rec) < 0) { in update_db()
874 begin_parse(const char *file, struct mparse *mp, mandb_rec *rec, int fd) in begin_parse() argument
879 rec->xr_found = 0; in begin_parse()
890 rec->page_type = MDOC; in begin_parse()
891 proff_node(roff->first->child, rec, roff, mdocs); in begin_parse()
893 rec->page_type = MAN; in begin_parse()
894 proff_node(roff->first->child, rec, roff, mans); in begin_parse()
897 set_machine(roff, rec); in begin_parse()
898 set_section(roff, rec); in begin_parse()
907 set_section(const struct roff_meta *rm, mandb_rec *rec) in set_section() argument
912 easprintf(&rec->section, "%s", s); in set_section()
913 if (rec->section[0] == '?' && mflags.verbosity == 2) in set_section()
914 warnx("%s: Missing section number", rec->file_path); in set_section()
922 set_machine(const struct roff_meta *rm, mandb_rec *rec) in set_machine() argument
927 rec->machine = estrdup(rm->arch); in set_machine()
935 pmdoc_Nm(const struct roff_node *n, mandb_rec *rec) in pmdoc_Nm() argument
943 concat(&rec->name, escaped_name); in pmdoc_Nm()
954 pmdoc_Nd(const struct roff_node *n, mandb_rec *rec) in pmdoc_Nd() argument
957 deroff(&rec->name_desc, n); in pmdoc_Nd()
958 if (rec->name_desc) in pmdoc_Nd()
959 replace_hyph(rec->name_desc); in pmdoc_Nd()
971 pmdoc_macro_handler(const struct roff_node *n, mandb_rec *rec, int doct) in pmdoc_macro_handler() argument
1002 mdoc_parse_section(n->sec, buf, rec); in pmdoc_macro_handler()
1011 mdoc_parse_section(n->sec, "\n", rec); in pmdoc_macro_handler()
1028 pmdoc_Xr(const struct roff_node *n, mandb_rec *rec) in pmdoc_Xr() argument
1033 pmdoc_Pp(const struct roff_node *n, mandb_rec *rec) in pmdoc_Pp() argument
1042 pmdoc_Sh(const struct roff_node *n, mandb_rec *rec) in pmdoc_Sh() argument
1064 mdoc_parse_Sh(n->body, rec); in pmdoc_Sh()
1073 mdoc_parse_Sh(const struct roff_node *n, mandb_rec *rec) in mdoc_parse_Sh() argument
1080 mdoc_parse_section(n->sec, n->string, rec); in mdoc_parse_Sh()
1088 pmdoc_macro_handler(n, rec, MDOC_Xr); in mdoc_parse_Sh()
1091 pmdoc_macro_handler(n, rec, MDOC_Pp); in mdoc_parse_Sh()
1100 mdoc_parse_Sh(n->child, rec); in mdoc_parse_Sh()
1101 mdoc_parse_Sh(n->next, rec); in mdoc_parse_Sh()
1114 mdoc_parse_section(enum roff_sec sec, const char *string, mandb_rec *rec) in mdoc_parse_section() argument
1125 append(&rec->lib, string); in mdoc_parse_section()
1128 append(&rec->return_vals, string); in mdoc_parse_section()
1131 append(&rec->env, string); in mdoc_parse_section()
1134 append(&rec->files, string); in mdoc_parse_section()
1137 append(&rec->exit_status, string); in mdoc_parse_section()
1140 append(&rec->diagnostics, string); in mdoc_parse_section()
1143 append(&rec->errors, string); in mdoc_parse_section()
1146 append(&rec->desc, string); in mdoc_parse_section()
1152 proff_node(const struct roff_node * n, mandb_rec * rec, in proff_node() argument
1173 (*func[tok_idx]) (n, rec); in proff_node()
1179 proff_node(n->child, rec, roff, func); in proff_node()
1180 proff_node(n->next, rec, roff, func); in proff_node()
1189 pman_parse_name(const struct roff_node *n, mandb_rec *rec) in pman_parse_name() argument
1196 concat(&rec->name_desc, tmp); in pman_parse_name()
1201 pman_parse_name(n->child, rec); in pman_parse_name()
1204 pman_parse_name(n->next, rec); in pman_parse_name()
1212 pman_block(const struct roff_node *n, mandb_rec *rec) in pman_block() argument
1231 pman_sh(const struct roff_node *n, mandb_rec *rec) in pman_sh() argument
1268 man_parse_section(mapping[i].section, n, rec); in pman_sh()
1278 pman_parse_name(n, rec); in pman_sh()
1280 name_desc = rec->name_desc; in pman_sh()
1314 if (rec->name == NULL) { in pman_sh()
1317 rec->name = estrndup(name_desc, sz); in pman_sh()
1330 if (rec->name && has_alias) { in pman_sh()
1336 concat2(&rec->links, name_desc, sz); in pman_sh()
1349 free(rec->name_desc); in pman_sh()
1350 rec->name_desc = temp; in pman_sh()
1351 temp = parse_escape(rec->name); in pman_sh()
1352 free(rec->name); in pman_sh()
1353 rec->name = temp; in pman_sh()
1362 man_parse_section(MANSEC_RETURN_VALUES, n, rec); in pman_sh()
1373 man_parse_section(MANSEC_EXIT_STATUS, n, rec); in pman_sh()
1378 man_parse_section(MANSEC_NONE, n, rec); in pman_sh()
1408 man_parse_section(enum man_sec sec, const struct roff_node *n, mandb_rec *rec) in man_parse_section() argument
1419 pman_parse_node(n, &rec->lib); in man_parse_section()
1422 pman_parse_node(n, &rec->return_vals); in man_parse_section()
1425 pman_parse_node(n, &rec->env); in man_parse_section()
1428 pman_parse_node(n, &rec->files); in man_parse_section()
1431 pman_parse_node(n, &rec->exit_status); in man_parse_section()
1434 pman_parse_node(n, &rec->diagnostics); in man_parse_section()
1437 pman_parse_node(n, &rec->errors); in man_parse_section()
1449 pman_parse_node(n, &rec->desc); in man_parse_section()
1463 insert_into_db(sqlite3 *db, mandb_rec *rec) in insert_into_db() argument
1478 if (rec->name == NULL || rec->name_desc == NULL || in insert_into_db()
1479 rec->md5_hash == NULL) { in insert_into_db()
1480 cleanup(rec); in insert_into_db()
1485 rec->desc.data[rec->desc.offset] = 0; in insert_into_db()
1486 rec->lib.data[rec->lib.offset] = 0; in insert_into_db()
1487 rec->env.data[rec->env.offset] = 0; in insert_into_db()
1488 rec->return_vals.data[rec->return_vals.offset] = 0; in insert_into_db()
1489 rec->exit_status.data[rec->exit_status.offset] = 0; in insert_into_db()
1490 rec->files.data[rec->files.offset] = 0; in insert_into_db()
1491 rec->diagnostics.data[rec->diagnostics.offset] = 0; in insert_into_db()
1492 rec->errors.data[rec->errors.offset] = 0; in insert_into_db()
1500 if (rec->page_type == MDOC) { in insert_into_db()
1502 rec->links = estrdup(rec->name); in insert_into_db()
1503 free(rec->name); in insert_into_db()
1504 size_t sz = strcspn(rec->links, " \0"); in insert_into_db()
1505 rec->name = emalloc(sz + 1); in insert_into_db()
1506 memcpy(rec->name, rec->links, sz); in insert_into_db()
1507 if(rec->name[sz - 1] == ',') in insert_into_db()
1508 rec->name[sz - 1] = 0; in insert_into_db()
1510 rec->name[sz] = 0; in insert_into_db()
1511 while (rec->links[sz] == ' ') in insert_into_db()
1513 tmp = estrdup(rec->links + sz); in insert_into_db()
1514 free(rec->links); in insert_into_db()
1515 rec->links = tmp; in insert_into_db()
1528 rc = sqlite3_bind_text(stmt, idx, rec->name, -1, NULL); in insert_into_db()
1535 rc = sqlite3_bind_text(stmt, idx, rec->section, -1, NULL); in insert_into_db()
1542 rc = sqlite3_bind_text(stmt, idx, rec->name_desc, -1, NULL); in insert_into_db()
1549 rc = sqlite3_bind_text(stmt, idx, rec->desc.data, in insert_into_db()
1550 rec->desc.offset + 1, NULL); in insert_into_db()
1557 rc = sqlite3_bind_text(stmt, idx, rec->lib.data, in insert_into_db()
1558 rec->lib.offset + 1, NULL); in insert_into_db()
1565 rc = sqlite3_bind_text(stmt, idx, rec->return_vals.data, in insert_into_db()
1566 rec->return_vals.offset + 1, NULL); in insert_into_db()
1573 rc = sqlite3_bind_text(stmt, idx, rec->env.data, in insert_into_db()
1574 rec->env.offset + 1, NULL); in insert_into_db()
1581 rc = sqlite3_bind_text(stmt, idx, rec->files.data, in insert_into_db()
1582 rec->files.offset + 1, NULL); in insert_into_db()
1589 rc = sqlite3_bind_text(stmt, idx, rec->exit_status.data, in insert_into_db()
1590 rec->exit_status.offset + 1, NULL); in insert_into_db()
1597 rc = sqlite3_bind_text(stmt, idx, rec->diagnostics.data, in insert_into_db()
1598 rec->diagnostics.offset + 1, NULL); in insert_into_db()
1605 rc = sqlite3_bind_text(stmt, idx, rec->errors.data, in insert_into_db()
1606 rec->errors.offset + 1, NULL); in insert_into_db()
1613 rc = sqlite3_bind_text(stmt, idx, rec->md5_hash, -1, NULL); in insert_into_db()
1620 if (rec->machine) in insert_into_db()
1621 rc = sqlite3_bind_text(stmt, idx, rec->machine, -1, NULL); in insert_into_db()
1648 rc = sqlite3_bind_int64(stmt, idx, rec->device); in insert_into_db()
1655 rc = sqlite3_bind_int64(stmt, idx, rec->inode); in insert_into_db()
1662 rc = sqlite3_bind_int64(stmt, idx, rec->mtime); in insert_into_db()
1669 rc = sqlite3_bind_text(stmt, idx, rec->file_path, -1, NULL); in insert_into_db()
1676 rc = sqlite3_bind_text(stmt, idx, rec->md5_hash, -1, NULL); in insert_into_db()
1702 warnx("Trying to update index for %s", rec->file_path); in insert_into_db()
1707 rec->file_path); in insert_into_db()
1724 cleanup(rec); in insert_into_db()
1730 sqlite3_bind_int64(stmt, idx, rec->device); in insert_into_db()
1732 sqlite3_bind_int64(stmt, idx, rec->inode); in insert_into_db()
1734 sqlite3_bind_int64(stmt, idx, rec->mtime); in insert_into_db()
1738 sqlite3_bind_text(stmt, idx, rec->md5_hash, -1, NULL); in insert_into_db()
1740 sqlite3_bind_text(stmt, idx, rec->file_path, -1, NULL); in insert_into_db()
1748 cleanup(rec); in insert_into_db()
1754 warnx("Failed at %s\n%s", rec->file_path, sqlite3_errmsg(db)); in insert_into_db()
1755 cleanup(rec); in insert_into_db()
1763 if (rec->links && strlen(rec->links)) { in insert_into_db()
1764 links = rec->links; in insert_into_db()
1773 ln, rec->name, rec->section, in insert_into_db()
1774 rec->machine, rec->md5_hash, rec->name_desc); in insert_into_db()
1779 cleanup(rec); in insert_into_db()
1786 cleanup(rec); in insert_into_db()
1792 cleanup(rec); in insert_into_db()
1882 cleanup(mandb_rec *rec) in cleanup() argument
1884 rec->desc.offset = 0; in cleanup()
1885 rec->lib.offset = 0; in cleanup()
1886 rec->return_vals.offset = 0; in cleanup()
1887 rec->env.offset = 0; in cleanup()
1888 rec->exit_status.offset = 0; in cleanup()
1889 rec->diagnostics.offset = 0; in cleanup()
1890 rec->errors.offset = 0; in cleanup()
1891 rec->files.offset = 0; in cleanup()
1893 free(rec->machine); in cleanup()
1894 rec->machine = NULL; in cleanup()
1896 free(rec->links); in cleanup()
1897 rec->links = NULL; in cleanup()
1899 free(rec->file_path); in cleanup()
1900 rec->file_path = NULL; in cleanup()
1902 free(rec->name); in cleanup()
1903 rec->name = NULL; in cleanup()
1905 free(rec->name_desc); in cleanup()
1906 rec->name_desc = NULL; in cleanup()
1908 free(rec->md5_hash); in cleanup()
1909 rec->md5_hash = NULL; in cleanup()
1911 free(rec->section); in cleanup()
1912 rec->section = NULL; in cleanup()
1921 init_secbuffs(mandb_rec *rec) in init_secbuffs() argument
1930 rec->desc.buflen = 10 * BUFLEN; in init_secbuffs()
1931 rec->desc.data = emalloc(rec->desc.buflen); in init_secbuffs()
1932 rec->desc.offset = 0; in init_secbuffs()
1934 rec->lib.buflen = BUFLEN / 2; in init_secbuffs()
1935 rec->lib.data = emalloc(rec->lib.buflen); in init_secbuffs()
1936 rec->lib.offset = 0; in init_secbuffs()
1938 rec->return_vals.buflen = BUFLEN; in init_secbuffs()
1939 rec->return_vals.data = emalloc(rec->return_vals.buflen); in init_secbuffs()
1940 rec->return_vals.offset = 0; in init_secbuffs()
1942 rec->exit_status.buflen = BUFLEN; in init_secbuffs()
1943 rec->exit_status.data = emalloc(rec->exit_status.buflen); in init_secbuffs()
1944 rec->exit_status.offset = 0; in init_secbuffs()
1946 rec->env.buflen = BUFLEN; in init_secbuffs()
1947 rec->env.data = emalloc(rec->env.buflen); in init_secbuffs()
1948 rec->env.offset = 0; in init_secbuffs()
1950 rec->files.buflen = BUFLEN; in init_secbuffs()
1951 rec->files.data = emalloc(rec->files.buflen); in init_secbuffs()
1952 rec->files.offset = 0; in init_secbuffs()
1954 rec->diagnostics.buflen = BUFLEN; in init_secbuffs()
1955 rec->diagnostics.data = emalloc(rec->diagnostics.buflen); in init_secbuffs()
1956 rec->diagnostics.offset = 0; in init_secbuffs()
1958 rec->errors.buflen = BUFLEN; in init_secbuffs()
1959 rec->errors.data = emalloc(rec->errors.buflen); in init_secbuffs()
1960 rec->errors.offset = 0; in init_secbuffs()
1970 free_secbuffs(mandb_rec *rec) in free_secbuffs() argument
1972 free(rec->desc.data); in free_secbuffs()
1973 free(rec->lib.data); in free_secbuffs()
1974 free(rec->return_vals.data); in free_secbuffs()
1975 free(rec->exit_status.data); in free_secbuffs()
1976 free(rec->env.data); in free_secbuffs()
1977 free(rec->files.data); in free_secbuffs()
1978 free(rec->diagnostics.data); in free_secbuffs()
1979 free(rec->errors.data); in free_secbuffs()