Migrate papi.c, ptools.c, pbusinessaccount.c to PMEM_SUBSYS_API

This commit is contained in:
Levi Neely 2026-03-08 19:11:04 +01:00
parent 7d10cf8d6c
commit bc36713350
3 changed files with 55 additions and 55 deletions

View File

@ -323,7 +323,7 @@ static binresult *do_parse_result(unsigned char **restrict indata,
alloc *= 2;
tmp = (binresult **)realloc(arr, sizeof(binresult *) * alloc);
if (!tmp) {
free(arr);
pmem_free(PMEM_SUBSYS_API, arr);
return NULL;
}
arr = tmp;
@ -335,7 +335,7 @@ static binresult *do_parse_result(unsigned char **restrict indata,
ret->array = (struct _binresult **)*odata;
*odata += sizeof(struct _binresult *) * cnt;
memcpy(ret->array, arr, sizeof(struct _binresult *) * cnt);
free(arr);
pmem_free(PMEM_SUBSYS_API, arr);
return ret;
} else if (type == RPARAM_HASH) {
struct _hashpair *arr;
@ -357,7 +357,7 @@ static binresult *do_parse_result(unsigned char **restrict indata,
tmp = (struct _hashpair *)realloc(arr, sizeof(struct _hashpair) *
alloc);
if (!tmp) {
free(arr);
pmem_free(PMEM_SUBSYS_API, arr);
return NULL;
}
arr = tmp;
@ -374,7 +374,7 @@ static binresult *do_parse_result(unsigned char **restrict indata,
ret->hash = (struct _hashpair *)*odata;
*odata += sizeof(struct _hashpair) * cnt;
memcpy(ret->hash, arr, sizeof(struct _hashpair) * cnt);
free(arr);
pmem_free(PMEM_SUBSYS_API, arr);
return ret;
} else if (type == RPARAM_DATA) {
ret = (binresult *)(*odata);
@ -429,19 +429,19 @@ binresult *papi_result(psock_t *sock) {
return NULL;
}
data = (unsigned char *)malloc(ressize);
data = (unsigned char *)pmem_malloc(PMEM_SUBSYS_API, ressize);
if (!data) {
pdbg_logf(D_ERROR, "Failed to allocate %u bytes for API response", ressize);
return NULL;
}
if (pdbg_unlikely(psock_readall(sock, data, ressize) != ressize)) {
free(data);
pmem_free(PMEM_SUBSYS_API, data);
return NULL;
}
res = parse_result(data, ressize);
free(data);
pmem_free(PMEM_SUBSYS_API, data);
return res;
}
@ -458,18 +458,18 @@ binresult *papi_result_thread(psock_t *sock) {
ressize, MAX_API_RESPONSE_SIZE);
return NULL;
}
data = (unsigned char *)malloc(ressize);
data = (unsigned char *)pmem_malloc(PMEM_SUBSYS_API, ressize);
if (!data) {
pdbg_logf(D_ERROR, "Failed to allocate %u bytes for API response", ressize);
return NULL;
}
if (pdbg_unlikely(psock_readall_thread(sock, data, ressize) !=
ressize)) {
free(data);
pmem_free(PMEM_SUBSYS_API, data);
return NULL;
}
res = parse_result(data, ressize);
free(data);
pmem_free(PMEM_SUBSYS_API, data);
return res;
}
@ -482,7 +482,7 @@ void papi_rdr_alloc(async_result_reader *reader) {
void papi_rdr_free(async_result_reader *reader) {
if (reader->state == 1)
free(reader->data);
pmem_free(PMEM_SUBSYS_API, reader->data);
}
int papi_result_async(psock_t *sock, async_result_reader *reader) {
@ -494,7 +494,7 @@ again:
return ASYNC_RES_NEEDMORE;
else if (rd == PSYNC_SOCKET_ERROR || rd == 0) {
if (reader->state == 1)
free(reader->data);
pmem_free(PMEM_SUBSYS_API, reader->data);
papi_rdr_alloc(reader);
reader->result = NULL;
return ASYNC_RES_READY;
@ -512,7 +512,7 @@ again:
papi_rdr_alloc(reader);
return ASYNC_RES_READY;
}
reader->data = (unsigned char *)malloc(reader->respsize);
reader->data = (unsigned char *)pmem_malloc(PMEM_SUBSYS_API, reader->respsize);
if (!reader->data) {
pdbg_logf(D_ERROR, "Failed to allocate %u bytes for API response",
reader->respsize);
@ -524,7 +524,7 @@ again:
} else {
pdbg_assert(reader->state == 1);
reader->result = parse_result(reader->data, reader->respsize);
free(reader->data);
pmem_free(PMEM_SUBSYS_API, reader->data);
papi_rdr_alloc(reader);
return ASYNC_RES_READY;
}
@ -557,7 +557,7 @@ unsigned char *papi_prepare(const char *command, size_t cmdlen,
}
if (pdbg_unlikely(plen > 0xffff))
return NULL;
sdata = data = (unsigned char *)malloc(plen + 2 + additionalalloc);
sdata = data = (unsigned char *)pmem_malloc(PMEM_SUBSYS_API, plen + 2 + additionalalloc);
if (!data)
return NULL;
memcpy(data, &plen, 2);
@ -606,16 +606,16 @@ binresult *papi_send(psock_t *sock, const char *command,
if (readres & 2) {
if (pdbg_unlikely(psock_writeall_thread(sock, sdata, plen) != plen)) {
free(sdata);
pmem_free(PMEM_SUBSYS_API, sdata);
return NULL;
}
} else {
if (pdbg_unlikely(psock_writeall(sock, sdata, plen) != plen)) {
free(sdata);
pmem_free(PMEM_SUBSYS_API, sdata);
return NULL;
}
}
free(sdata);
pmem_free(PMEM_SUBSYS_API, sdata);
if (readres & 1) {
return papi_result(sock);
} else {

View File

@ -191,12 +191,12 @@ int do_psync_account_stopshare(psync_shareid_t usershareids[], int nusershareid,
}
if (ids1)
free(ids1);
pmem_free(PMEM_SUBSYS_API, ids1);
if (ids2)
free(ids2);
pmem_free(PMEM_SUBSYS_API, ids2);
free(bres);
free(t);
pmem_free(PMEM_SUBSYS_API, bres);
pmem_free(PMEM_SUBSYS_API, t);
return result;
}
@ -348,16 +348,16 @@ int do_psync_account_modifyshare(psync_shareid_t usrshrids[], uint32_t uperms[],
}
if (ids1)
free(ids1);
pmem_free(PMEM_SUBSYS_API, ids1);
if (ids2)
free(ids2);
pmem_free(PMEM_SUBSYS_API, ids2);
if (perms1)
free(perms1);
pmem_free(PMEM_SUBSYS_API, perms1);
if (perms2)
free(perms2);
pmem_free(PMEM_SUBSYS_API, perms2);
free(bres);
free(t);
pmem_free(PMEM_SUBSYS_API, bres);
pmem_free(PMEM_SUBSYS_API, t);
return result;
}
@ -372,7 +372,7 @@ void get_ba_member_email(uint64_t userid, char **email /*OUT*/,
psql_bind_uint(res, 1, userid);
if ((row = psql_fetch(res))) {
cstr = psync_get_lstring(row[0], length);
*email = (char *)malloc(*length);
*email = (char *)pmem_malloc(PMEM_SUBSYS_API, *length);
memcpy(*email, cstr, *length);
psql_free(res);
return;
@ -399,7 +399,7 @@ void get_ba_member_email(uint64_t userid, char **email /*OUT*/,
users = papi_find_result2(bres, "users", PARAM_ARRAY);
if (!users->length) {
free(bres);
pmem_free(PMEM_SUBSYS_API, bres);
pdbg_logf(D_WARNING, "Account_users returned empty result!\n");
return;
} else {
@ -410,7 +410,7 @@ void get_ba_member_email(uint64_t userid, char **email /*OUT*/,
fname = papi_find_result2(users->array[0], "firstname", PARAM_STR)->str;
lname = papi_find_result2(users->array[0], "lastname", PARAM_STR)->str;
}
free(bres);
pmem_free(PMEM_SUBSYS_API, bres);
if (*length) {
psync_sql_res *q;
@ -438,7 +438,7 @@ void get_ba_team_name(uint64_t teamid, char **name /*OUT*/,
psql_bind_uint(res, 1, teamid);
if ((row = psql_fetch(res))) {
cstr = psync_get_lstring(row[0], length);
*name = (char *)malloc(*length);
*name = (char *)pmem_malloc(PMEM_SUBSYS_API, *length);
memcpy(*name, cstr, *length);
psql_free(res);
return;
@ -464,7 +464,7 @@ void get_ba_team_name(uint64_t teamid, char **name /*OUT*/,
// pdbg_logf(D_NOTICE, "Result contains %d teams\n", users->length);
if (!teams->length) {
free(bres);
pmem_free(PMEM_SUBSYS_API, bres);
pdbg_logf(D_WARNING, "Account_teams returned empty result!\n");
return;
} else {
@ -473,7 +473,7 @@ void get_ba_team_name(uint64_t teamid, char **name /*OUT*/,
*length = strlen(teamret);
*name = putil_strndup(teamret, *length);
}
free(bres);
pmem_free(PMEM_SUBSYS_API, bres);
psync_sql_res *q;
q = psql_prepare(
@ -557,7 +557,7 @@ void cache_account_emails() {
psql_commit();
}
end_close:
free(bres);
pmem_free(PMEM_SUBSYS_API, bres);
}
void cache_account_teams() {
@ -591,7 +591,7 @@ void cache_account_teams() {
// pdbg_logf(D_NOTICE, "Result contains %d teams\n", users->length);
if (!users->length) {
free(bres);
pmem_free(PMEM_SUBSYS_API, bres);
pdbg_logf(D_WARNING, "Account_teams returned empty result!\n");
return;
} else {
@ -619,7 +619,7 @@ void cache_account_teams() {
}
psql_commit();
}
free(bres);
pmem_free(PMEM_SUBSYS_API, bres);
return;
}
@ -664,7 +664,7 @@ void cache_ba_my_teams() {
users = papi_find_result2(bres, "users", PARAM_ARRAY);
if (!users->length) {
free(bres);
pmem_free(PMEM_SUBSYS_API, bres);
pdbg_logf(D_WARNING, "Account_users returned empty result!\n");
return;
}
@ -676,7 +676,7 @@ void cache_ba_my_teams() {
teams = papi_find_result2(user, "teams", PARAM_ARRAY);
for (i = 0; i < teams->length; i++)
cache_my_team(teams->array[i]);
free(bres);
pmem_free(PMEM_SUBSYS_API, bres);
psql_unlock();
}
@ -684,7 +684,7 @@ int api_error_result(binresult *res) {
uint64_t result;
result = papi_find_result2(res, "result", PARAM_NUM)->num;
if (result) {
free(res);
pmem_free(PMEM_SUBSYS_API, res);
psync_process_api_error(result);
return 1;
}
@ -783,20 +783,20 @@ static psync_folderid_t create_index_folder(const char *path) {
while (ind < 100) {
bufflen = strlen(path) + 1 /*zero char*/ + 3 /*parenthesis*/ +
3 /*up to 3 digit index*/;
buff = (char *)malloc(bufflen);
buff = (char *)pmem_malloc(PMEM_SUBSYS_API, bufflen);
snprintf(buff, bufflen - 1, "%s (%d)", path, ind);
if (psync_create_remote_folder_by_path(buff, &err) != 0)
pdbg_logf(D_NOTICE, "Unable to create folder %s error is %s.", buff, err);
folderid = pfolder_id(buff);
if ((folderid != PSYNC_INVALID_FOLDERID) &&
check_write_permissions(folderid)) {
free(buff);
pmem_free(PMEM_SUBSYS_API, buff);
break;
}
++ind;
if (err)
free(err);
free(buff);
pmem_free(PMEM_SUBSYS_API, err);
pmem_free(PMEM_SUBSYS_API, buff);
}
return folderid;
}
@ -807,7 +807,7 @@ psync_folderid_t psync_check_and_create_folder(const char *path) {
if (folderid == PSYNC_INVALID_FOLDERID) {
if (psync_create_remote_folder_by_path(path, &err) != 0) {
pdbg_logf(D_NOTICE, "Unable to create folder %s error is %s.", path, err);
free(err);
pmem_free(PMEM_SUBSYS_API, err);
folderid = create_index_folder(path);
}
} else if (!check_write_permissions(folderid))

View File

@ -124,7 +124,7 @@ int ptools_create_backend_event(const char *binapi, const char *category,
tpCnt = mpCnt; // Manadatory parameters only.
}
paramsLocal = (binparam *)malloc(
paramsLocal = (binparam *)pmem_malloc(PMEM_SUBSYS_API,
(tpCnt) * sizeof(binparam)); // Allocate size for all parameters.
// Set the mandatory pramaters.
@ -226,8 +226,8 @@ int ptools_create_backend_event(const char *binapi, const char *category,
res = papi_send(sock, EVENT_WS, strlen(EVENT_WS), paramsLocal, tpCnt,
-1, 1);
free(keyParams);
free(paramsLocal);
pmem_free(PMEM_SUBSYS_API, keyParams);
pmem_free(PMEM_SUBSYS_API, paramsLocal);
if (pdbg_unlikely(!res)) {
psock_close(sock);
@ -269,11 +269,11 @@ int ptools_backend_call(const char *binapi, const char *wsPath,
uint64_t result;
if (totalParCnt > 0) {
localParams = (binparam *)malloc(
localParams = (binparam *)pmem_malloc(PMEM_SUBSYS_API,
(totalParCnt) *
sizeof(binparam)); // Allocate size for all required parameters.
} else {
localParams = (binparam *)malloc(sizeof(binparam));
localParams = (binparam *)pmem_malloc(PMEM_SUBSYS_API, sizeof(binparam));
}
// Add required parameters to the structure
@ -349,7 +349,7 @@ int ptools_backend_call(const char *binapi, const char *wsPath,
res = papi_send(sock, wsPath, strlen(wsPath), localParams, totalParCnt,
-1, 1);
free(localParams);
pmem_free(PMEM_SUBSYS_API, localParams);
if (pdbg_unlikely(!res)) {
psock_close(sock);
@ -474,7 +474,7 @@ void ptools_send_psyncs_event(const char *binapi, const char *auth) {
if (syncCnt < 1) {
pdbg_logf(D_NOTICE, "No syncs, skip the event.");
free(errMsg);
pmem_free(PMEM_SUBSYS_API, errMsg);
return;
}
@ -496,7 +496,7 @@ void ptools_send_psyncs_event(const char *binapi, const char *auth) {
psql_run_free(sql);
}
free(errMsg);
pmem_free(PMEM_SUBSYS_API, errMsg);
}
int ptools_set_backend_file_dates(uint64_t fileid, time_t ctime, time_t mtime) {
@ -525,7 +525,7 @@ int ptools_set_backend_file_dates(uint64_t fileid, time_t ctime, time_t mtime) {
/* Free errPtr before reuse to avoid leak if first call allocated it */
if (errPtr) {
free(errPtr);
pmem_free(PMEM_SUBSYS_API, errPtr);
errPtr = NULL;
}
@ -542,7 +542,7 @@ int ptools_set_backend_file_dates(uint64_t fileid, time_t ctime, time_t mtime) {
pdbg_logf(D_NOTICE, "mTime res: [%d]", callRes);
if (errPtr)
free(errPtr);
pmem_free(PMEM_SUBSYS_API, errPtr);
return callRes;
}