dp_refresh.c revision 877b92e80bde510d5cd9f03dbf01e2bcf73ab072
/*
Authors:
Pavel Březina <pbrezina@redhat.com>
Copyright (C) 2013 Red Hat
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include <tevent.h>
#include <talloc.h>
#include <time.h>
#include <ldb.h>
#include "providers/dp_backend.h"
#include "providers/dp_ptask.h"
#include "providers/dp_refresh.h"
#include "util/util_errors.h"
struct sss_domain_info *domain,
const char *objectclass,
const char *attr,
char ***_values)
{
return ENOMEM;
}
goto done;
}
count = 0;
goto done;
}
"Could not convert ldb message to sysdb_attrs\n");
goto done;
}
goto done;
}
done:
return ret;
}
enum be_refresh_type type,
struct sss_domain_info *domain,
char ***_values)
{
switch (type) {
case BE_REFRESH_TYPE_USERS:
break;
case BE_REFRESH_TYPE_GROUPS:
break;
break;
case BE_REFRESH_TYPE_SENTINEL:
return ERR_INTERNAL;
break;
}
return ENOMEM;
}
return ret;
}
struct be_refresh_cb {
const char *name;
bool enabled;
void *pvt;
};
struct be_refresh_ctx {
};
{
return NULL;
}
return ctx;
}
enum be_refresh_type type,
void *pvt)
{
|| type >= BE_REFRESH_TYPE_SENTINEL) {
return EINVAL;
}
return EEXIST;
}
return EOK;
}
struct be_refresh_state {
struct tevent_context *ev;
struct be_refresh_ctx *ctx;
struct be_refresh_cb *cb;
struct sss_domain_info *domain;
enum be_refresh_type index;
};
struct tevent_context *ev,
void *pvt)
{
struct be_refresh_state);
return NULL;
}
goto immediately;
}
goto immediately;
goto immediately;
}
return req;
} else {
}
return req;
}
{
/* find first enabled callback */
}
/* if not found than continue with next domain */
continue;
}
ret = ERR_INTERNAL;
goto done;
}
goto done;
}
goto done;
}
/* make the list disappear with subreq */
goto done;
}
done:
}
return ret;
}
{
goto done;
}
return;
}
done:
return;
}
}
{
return EOK;
}