BOOL gencache_set(const char *keystr, const char *value, time_t timeout)
{
int ret;
- TDB_DATA keybuf, databuf;
+ TDB_DATA databuf;
char* valstr = NULL;
/* fail completely if get null pointers passed */
if (!valstr)
return False;
- keybuf.dptr = CONST_DISCARD(char *, keystr);
- keybuf.dsize = strlen(keystr)+1;
- databuf.dptr = valstr;
- databuf.dsize = strlen(valstr)+1;
+ databuf = string_term_tdb_data(valstr);
DEBUG(10, ("Adding cache entry with key = %s; value = %s and timeout ="
- " %s (%d seconds %s)\n", keybuf.dptr, value,ctime(&timeout),
+ " %s (%d seconds %s)\n", keystr, value,ctime(&timeout),
(int)(timeout - time(NULL)),
timeout > time(NULL) ? "ahead" : "in the past"));
- ret = tdb_store(cache, keybuf, databuf, 0);
+ ret = tdb_store_bystring(cache, keystr, databuf, 0);
SAFE_FREE(valstr);
return ret == 0;
BOOL gencache_del(const char *keystr)
{
int ret;
- TDB_DATA keybuf;
/* fail completely if get null pointers passed */
SMB_ASSERT(keystr);
return False;
}
- keybuf.dptr = CONST_DISCARD(char *, keystr);
- keybuf.dsize = strlen(keystr)+1;
DEBUG(10, ("Deleting cache entry (key = %s)\n", keystr));
- ret = tdb_delete(cache, keybuf);
+ ret = tdb_delete_bystring(cache, keystr);
return ret == 0;
}
BOOL gencache_get(const char *keystr, char **valstr, time_t *timeout)
{
- TDB_DATA keybuf, databuf;
+ TDB_DATA databuf;
time_t t;
char *endptr;
if (!gencache_init()) {
return False;
}
-
- keybuf.dptr = CONST_DISCARD(char *, keystr);
- keybuf.dsize = strlen(keystr)+1;
- databuf = tdb_fetch(cache, keybuf);
+
+ databuf = tdb_fetch_bystring(cache, keystr);
if (databuf.dptr == NULL) {
DEBUG(10, ("Cache entry with key = %s couldn't be found\n",
if (t <= time(NULL)) {
/* We're expired, delete the entry */
- tdb_delete(cache, keybuf);
+ tdb_delete_bystring(cache, keystr);
SAFE_FREE(databuf.dptr);
return False;
{
TDB_CONTEXT *tdb = get_account_pol_tdb();
fstring keystr;
- TDB_DATA key, data;
+ TDB_DATA data;
/* Fail if the admin has not enable privileges */
/* PRIV_<SID> (NULL terminated) as the key */
fstr_sprintf( keystr, "%s%s", PRIVPREFIX, sid_string_static(sid) );
- key.dptr = keystr;
- key.dsize = strlen(keystr) + 1;
- data = tdb_fetch( tdb, key );
+ data = tdb_fetch_bystring( tdb, keystr );
if ( !data.dptr ) {
DEBUG(3,("get_privileges: No privileges assigned to SID [%s]\n",
{
TDB_CONTEXT *tdb = get_account_pol_tdb();
fstring keystr;
- TDB_DATA key, data;
+ TDB_DATA data;
if ( !lp_enable_privileges() )
return False;
/* PRIV_<SID> (NULL terminated) as the key */
fstr_sprintf( keystr, "%s%s", PRIVPREFIX, sid_string_static(sid) );
- key.dptr = keystr;
- key.dsize = strlen(keystr) + 1;
/* no packing. static size structure, just write it out */
data.dptr = (char*)mask;
data.dsize = sizeof(SE_PRIV);
- return ( tdb_store(tdb, key, data, TDB_REPLACE) != -1 );
+ return ( tdb_store_bystring(tdb, keystr, data, TDB_REPLACE) != -1 );
}
/****************************************************************************