newopts
newopts[0] = '\0';
if (newopts[0])
strcat(newopts, ",");
strcat(newopts, saveopt);
if (newopts[0])
strcat(newopts, ",");
strcat(newopts, MNTOPT_XATTR);
strcpy(mnt->mnt_mntopts, newopts);
free(newopts);
char *saveopt, *optstr, *opts, *newopts, *val;
newopts = malloc(optlen);
if (opts == NULL || newopts == NULL) {
if (newopts)
free(newopts);
if (newopts(sh->sh_opts))
static int newopts(char *);
if (newopts(sh->sh_opts))
if (newopts(sh->sh_opts))
conf_replace(const char *lhs, struct opts *newopts)
cp->cf_opts = newopts;
if (newopts == NULL)
fillconflist(0, lhs, newopts, NULL, 0);
void conf_replace(const char *lhs, struct opts *newopts);
append_options(char *mntopts, char *newopts)
if (len + 1 + strlen(newopts) >= MNT_LINE_MAX) {
(void) strcpy(&mntopts[len], newopts);
pkinit_identity_opts *newopts;
retval = pkinit_init_identity_opts(&newopts);
newopts->identity = strdup(src_opts->identity);
if (newopts->identity == NULL)
retval = copy_list(&newopts->anchors, src_opts->anchors);
retval = copy_list(&newopts->intermediates,src_opts->intermediates);
retval = copy_list(&newopts->crls, src_opts->crls);
newopts->ocsp = strdup(src_opts->ocsp);
if (newopts->ocsp == NULL)
newopts->cert_filename = strdup(src_opts->cert_filename);
if (newopts->cert_filename == NULL)
newopts->key_filename = strdup(src_opts->key_filename);
if (newopts->key_filename == NULL)
newopts->p11_module_name = strdup(src_opts->p11_module_name);
if (newopts->p11_module_name == NULL)
newopts->slotid = src_opts->slotid;
newopts->token_label = strdup(src_opts->token_label);
if (newopts->token_label == NULL)
newopts->cert_id_string = strdup(src_opts->cert_id_string);
if (newopts->cert_id_string == NULL)
newopts->cert_label = strdup(src_opts->cert_label);
if (newopts->cert_label == NULL)
newopts->PIN = strdup(src_opts->PIN);
if (newopts->PIN == NULL)
*dest_opts = newopts;
pkinit_fini_identity_opts(newopts);