Lines Matching refs:data

177 #define add_to_groups(data, member_dn) \
178 mod_groups_member(data->domain, data->addgroups, member_dn, \
180 #define remove_from_groups(data, member_dn) \
181 mod_groups_member(data->domain, data->rmgroups, member_dn, \
193 struct ops_ctx *data;
278 struct ops_ctx *data)
284 data->sysdb_fqname = sss_create_internal_fqname(data,
285 data->name,
286 data->domain->name);
287 if (data->sysdb_fqname == NULL) {
291 if (data->addgroups || data->rmgroups) {
292 member_dn = sysdb_user_dn(mem_ctx, data->domain, data->sysdb_fqname);
299 data->gecos,
300 data->home,
301 data->shell,
302 data->uid,
303 data->gid,
304 data->lock,
311 ret = sysdb_set_user_attr(data->domain, data->sysdb_fqname,
318 if (data->rmgroups != NULL) {
319 ret = remove_from_groups(data, member_dn);
325 if (data->addgroups != NULL) {
326 ret = add_to_groups(data, member_dn);
332 if (data->addattr) {
333 ret = attr_op(data, data->addattr, SYSDB_MOD_ADD);
339 if (data->setattr) {
340 ret = attr_op(data, data->setattr, SYSDB_MOD_REP);
347 if (data->delattr) {
348 ret = attr_op(data, data->delattr, SYSDB_MOD_DEL);
364 struct ops_ctx *data)
370 data->sysdb_fqname = sss_create_internal_fqname(data,
371 data->name,
372 data->domain->name);
373 if (data->sysdb_fqname == NULL) {
377 if (data->addgroups || data->rmgroups) {
378 member_dn = sysdb_group_dn(mem_ctx, data->domain, data->sysdb_fqname);
384 if (data->gid != 0) {
389 ret = sysdb_attrs_add_uint32(attrs, SYSDB_GIDNUM, data->gid);
394 ret = sysdb_set_group_attr(data->domain, data->sysdb_fqname,
401 if (data->rmgroups != NULL) {
402 ret = remove_from_groups(data, member_dn);
408 if (data->addgroups != NULL) {
409 ret = add_to_groups(data, member_dn);
422 struct ops_ctx *data,
429 conf_path = talloc_asprintf(mem_ctx, CONFDB_DOMAIN_PATH_TMPL, data->domain->name);
442 data->remove_homedir = dfl_remove_home;
444 data->remove_homedir = (remove_home == DO_REMOVE_HOME);
450 DFL_MAIL_DIR, &data->maildir);
466 struct ops_ctx *data,
477 conf_path = talloc_asprintf(mem_ctx, CONFDB_DOMAIN_PATH_TMPL, data->domain->name);
483 data->gecos = talloc_strdup(mem_ctx, gecos ? gecos : data->name);
484 if (!data->gecos) {
488 DEBUG(SSSDBG_TRACE_LIBS, "Gecos: %s\n", data->gecos);
492 data->home = talloc_strdup(data, homedir);
500 data->home = talloc_asprintf(mem_ctx, "%s/%s", basedir, data->name);
502 if (!data->home) {
506 DEBUG(SSSDBG_TRACE_LIBS, "Homedir: %s\n", data->home);
512 DFL_SHELL_VAL, &data->shell);
517 data->shell = talloc_strdup(mem_ctx, shell);
518 if (!data->shell) {
523 DEBUG(SSSDBG_TRACE_LIBS, "Shell: %s\n", data->shell);
529 DFL_CREATE_HOMEDIR, &data->create_homedir);
534 data->create_homedir = (create_home == DO_CREATE_HOME);
537 "Auto create homedir: %s\n", data->create_homedir?"True":"False");
542 SSS_DFL_UMASK, (int *) &data->umask);
546 DEBUG(SSSDBG_TRACE_LIBS, "Umask: %o\n", data->umask);
551 DFL_MAIL_DIR, &data->maildir);
555 DEBUG(SSSDBG_TRACE_LIBS, "Mail dir: %s\n", data->maildir);
561 DFL_SKEL_DIR, &data->skeldir);
566 data->skeldir = talloc_strdup(mem_ctx, skeldir);
567 if (!data->skeldir) {
572 DEBUG(SSSDBG_TRACE_LIBS, "Skeleton dir: %s\n", data->skeldir);
585 struct ops_ctx *data)
589 data->sysdb_fqname = sss_create_internal_fqname(data,
590 data->name,
591 data->domain->name);
592 if (data->sysdb_fqname == NULL) {
597 ret = sysdb_add_user(data->domain, data->sysdb_fqname, data->uid, data->gid,
598 data->gecos, data->home, data->shell,
604 if (data->addgroups) {
607 member_dn = sysdb_user_dn(mem_ctx, data->domain, data->sysdb_fqname);
613 ret = add_to_groups(data, member_dn);
631 struct ops_ctx *data)
636 data->sysdb_fqname = sss_create_internal_fqname(data,
637 data->name,
638 data->domain->name);
639 if (data->sysdb_fqname == NULL) {
643 user_dn = sysdb_user_dn(mem_ctx, data->domain, data->sysdb_fqname);
664 int groupadd(struct ops_ctx *data)
668 data->sysdb_fqname = sss_create_internal_fqname(data,
669 data->name,
670 data->domain->name);
671 if (data->sysdb_fqname == NULL) {
675 ret = sysdb_add_group(data->domain, data->sysdb_fqname, data->gid, NULL, 0, 0);
687 struct ops_ctx *data)
692 data->sysdb_fqname = sss_create_internal_fqname(data,
693 data->name,
694 data->domain->name);
695 if (data->sysdb_fqname == NULL) {
699 group_dn = sysdb_group_dn(mem_ctx, data->domain, data->sysdb_fqname);