mapper
plc.mapper.mapname = get_string(optarg_av, &rv);
if (plc.mapper.mapname == NULL) {
plc.mapper.dir = get_string(optarg_av, &rv);
if (plc.mapper.dir == NULL) {
plc.mapper.pathname = get_string(optarg_av,
if (plc.mapper.pathname == NULL) {
plc.mapper.options = get_string(optarg_av, &rv);
if (plc.mapper.options == NULL) {
if ((plc.mapper.mapname != NULL && plc.mapper.pathname != NULL) ||
(plc.mapper.dir != NULL && plc.mapper.pathname != NULL) ||
(plc.mapper.dir != NULL && plc.mapper.mapname == NULL) ||
(plc.mapper.options != NULL && plc.mapper.mapname == NULL &&
plc.mapper.pathname == NULL)) {
plc->mapper.mapname ? plc->mapper.mapname : "<null>");
plc->mapper.pathname ? plc->mapper.pathname : "<null>");
plc->mapper.dir ? plc->mapper.dir : "<null>");
plc->mapper.options ? plc->mapper.options : "<null>");
plc.mapper.options = get_string(optarg_av, &rv);
(mapper_name != NULL && oplc.mapper.pathname != NULL) ||
(mapper_pathname != NULL && oplc.mapper.mapname != NULL) ||
oplc.mapper.mapname == NULL) ||
(mapper_dir != NULL && oplc.mapper.pathname != NULL) ||
((plc.mapper.options != NULL || oplc.mapper.options != NULL) &&
(mapper_name == NULL && oplc.mapper.mapname == NULL &&
mapper_pathname == NULL && oplc.mapper.pathname == NULL))) {
if (flags & KC_MAPPER_OPTIONS && plc.mapper.options != NULL)
free(plc.mapper.options);
plc.mapper.mapname = mapper_name;
plc.mapper.pathname = mapper_pathname;
plc.mapper.dir = mapper_dir;
UPDATE_IF_DIFFERENT(oplc.mapper.mapname, plc.mapper.mapname);
UPDATE_IF_DIFFERENT(oplc.mapper.pathname, plc.mapper.pathname);
UPDATE_IF_DIFFERENT(oplc.mapper.dir, plc.mapper.dir);
if (oplc.mapper.options != NULL)
free(oplc.mapper.options);
oplc.mapper.options = plc.mapper.options;
KMF_MAPPER_RECORD mapper; /* kmfmapper.h */
map = &handle->policy->mapper;
map = &handle->policy->mapper;
map = &handle->policy->mapper;
map = &(h->policy->mapper);
KMF_MAPPER_RECORD *mapper = &handle->policy->mapper;
if (mapper->curpathname != NULL) {
free(mapper->curpathname);
mapper->curpathname = NULL;
if (mapper->curoptions != NULL) {
free(mapper->curoptions);
mapper->curoptions = NULL;
if (mapper->dldesc != NULL) {
finalize = (void(*)())dlsym(mapper->dldesc,
(void) dlclose(mapper->dldesc);
mapper->dldesc = NULL;
if ((ret = AddMapperPolicyNodes(pnode, &policy->mapper))) {
parseMapper(xmlNodePtr node, KMF_MAPPER_RECORD *mapper)
mapper->mapname = (char *)xmlGetProp(n,
mapper->dir = (char *)xmlGetProp(n,
mapper->pathname = (char *)xmlGetProp(n,
mapper->options = (char *)xmlGetProp(n,
mapper->curpathname = NULL;
mapper->curoptions = NULL;
ret = parseMapper(n, &policy->mapper);
AddMapperPolicyNodes(xmlNodePtr parent, KMF_MAPPER_RECORD *mapper)
if (mapper->mapname != NULL &&
newprop(mapper_node, KMF_CERT_MAPPER_NAME_ATTR, mapper->mapname)) {
if (mapper->pathname != NULL &&
newprop(mapper_node, KMF_CERT_MAPPER_PATH_ATTR, mapper->pathname)) {
if (mapper->dir != NULL &&
newprop(mapper_node, KMF_CERT_MAPPER_DIR_ATTR, mapper->dir)) {
if (mapper->options != NULL &&
newprop(mapper_node, KMF_CERT_MAPPER_OPTIONS_ATTR, mapper->options))
FREE_POLICY_STR(policy->mapper.mapname)
FREE_POLICY_STR(policy->mapper.pathname)
FREE_POLICY_STR(policy->mapper.options)
FREE_POLICY_STR(policy->mapper.dir)
if (pthread_create(NULL, NULL, mapper, &fd) != 0) {
uint32_t mapper;
mapper = MC_CHANNEL_MAPPER_RD(node);
lc = CHANNEL_MAP(mapper, channel, write);