static int createdb(const char *f) { char *line, *eq; s = sdb_new (NULL, f, 0); if (!s || !sdb_disk_create (s)) { fprintf (stderr, "Cannot create database\n"); return 1; } sdb_config (s, SDB_OPTION_FS | SDB_OPTION_NOSTAMP); for (;(line = stdin_gets ());) { if ((eq = strchr (line, '='))) { *eq = 0; sdb_disk_insert (s, line, eq+1); } free (line); } sdb_disk_finish (s); return 0; }
static int createdb(const char *f, const char **args, int nargs) { char *line, *eq; s = sdb_new (NULL, f, 0); if (!s || !sdb_disk_create (s)) { eprintf ("Cannot create database\n"); return 1; } insertkeys (s, args, nargs, '='); sdb_config (s, options); for (;(line = stdin_slurp (NULL));) { if ((eq = strchr (line, '='))) { *eq++ = 0; sdb_disk_insert (s, line, eq); } free (line); } sdb_disk_finish (s); return 0; }