int lmc_namespace_or_filename(char *result, const char* ons, const char *ofn, lmc_error_t *e) { if (ons) { lmc_clean_string(result, ons); return 1; } if (ofn) { size_t n = strlen(ofn); if (n > 1010) { n = 1010; } char *d = result; if (!lmc_is_filename(ofn)) { strcpy(d, "./"); d += 2; } strcpy(d, ofn); return 1; } lmc_handle_error_with_err_string("lmc_namespace_or_filename", "Need to supply either namespace or filename argument", "ArgError", e); return 0; }
void lmc_namespacify(char *result, const char *s) { char cs[1024]; if (lmc_is_filename(s)) { lmc_clean_string(cs, s); } else { strcpy(cs, s); } snprintf(result, 15, "/lmc-%zX", lmc_hash(cs, strlen(cs))) ; }