lib/jsonrpc: remove spdk_ prefix from internal functions.
Signed-off-by: Seth Howell <seth.howell@intel.com> Change-Id: Ieeb58943536caf46db77ce22509eccb477fa914a Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/2214 Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com>
This commit is contained in:
parent
1f4f4cc75a
commit
134590a206
@ -77,7 +77,7 @@ static const struct spdk_json_object_decoder jsonrpc_response_decoders[] = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
int
|
int
|
||||||
spdk_jsonrpc_parse_response(struct spdk_jsonrpc_client *client)
|
jsonrpc_parse_response(struct spdk_jsonrpc_client *client)
|
||||||
{
|
{
|
||||||
struct spdk_jsonrpc_client_response_internal *r;
|
struct spdk_jsonrpc_client_response_internal *r;
|
||||||
ssize_t rc;
|
ssize_t rc;
|
||||||
|
@ -141,7 +141,7 @@ _spdk_jsonrpc_client_recv(struct spdk_jsonrpc_client *client)
|
|||||||
client->recv_buf[client->recv_offset] = '\0';
|
client->recv_buf[client->recv_offset] = '\0';
|
||||||
|
|
||||||
/* Check to see if we have received a full JSON value. */
|
/* Check to see if we have received a full JSON value. */
|
||||||
return spdk_jsonrpc_parse_response(client);
|
return jsonrpc_parse_response(client);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
|
@ -136,20 +136,20 @@ struct spdk_jsonrpc_client {
|
|||||||
};
|
};
|
||||||
|
|
||||||
/* jsonrpc_server_tcp */
|
/* jsonrpc_server_tcp */
|
||||||
void spdk_jsonrpc_server_handle_request(struct spdk_jsonrpc_request *request,
|
void jsonrpc_server_handle_request(struct spdk_jsonrpc_request *request,
|
||||||
const struct spdk_json_val *method,
|
const struct spdk_json_val *method,
|
||||||
const struct spdk_json_val *params);
|
const struct spdk_json_val *params);
|
||||||
void spdk_jsonrpc_server_handle_error(struct spdk_jsonrpc_request *request, int error);
|
void jsonrpc_server_handle_error(struct spdk_jsonrpc_request *request, int error);
|
||||||
|
|
||||||
/* Might be called from any thread */
|
/* Might be called from any thread */
|
||||||
void spdk_jsonrpc_server_send_response(struct spdk_jsonrpc_request *request);
|
void jsonrpc_server_send_response(struct spdk_jsonrpc_request *request);
|
||||||
|
|
||||||
/* jsonrpc_server */
|
/* jsonrpc_server */
|
||||||
int spdk_jsonrpc_parse_request(struct spdk_jsonrpc_server_conn *conn, const void *json,
|
int jsonrpc_parse_request(struct spdk_jsonrpc_server_conn *conn, const void *json,
|
||||||
size_t size);
|
size_t size);
|
||||||
|
|
||||||
/* Must be called only from server poll thread */
|
/* Must be called only from server poll thread */
|
||||||
void spdk_jsonrpc_free_request(struct spdk_jsonrpc_request *request);
|
void jsonrpc_free_request(struct spdk_jsonrpc_request *request);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Parse JSON data as RPC command response.
|
* Parse JSON data as RPC command response.
|
||||||
@ -161,6 +161,6 @@ void spdk_jsonrpc_free_request(struct spdk_jsonrpc_request *request);
|
|||||||
* -EINVAL - If the provided data has invalid JSON syntax and can't be parsed (SPDK_JSON_PARSE_INVALID).
|
* -EINVAL - If the provided data has invalid JSON syntax and can't be parsed (SPDK_JSON_PARSE_INVALID).
|
||||||
* -ENOSPC - No space left to store parsed response.
|
* -ENOSPC - No space left to store parsed response.
|
||||||
*/
|
*/
|
||||||
int spdk_jsonrpc_parse_response(struct spdk_jsonrpc_client *client);
|
int jsonrpc_parse_response(struct spdk_jsonrpc_client *client);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -100,11 +100,11 @@ parse_single_request(struct spdk_jsonrpc_request *request, struct spdk_json_val
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
spdk_jsonrpc_server_handle_request(request, req.method, params);
|
jsonrpc_server_handle_request(request, req.method, params);
|
||||||
return;
|
return;
|
||||||
|
|
||||||
invalid:
|
invalid:
|
||||||
spdk_jsonrpc_server_handle_error(request, SPDK_JSONRPC_ERROR_INVALID_REQUEST);
|
jsonrpc_server_handle_error(request, SPDK_JSONRPC_ERROR_INVALID_REQUEST);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
@ -144,7 +144,7 @@ spdk_jsonrpc_server_write_cb(void *cb_ctx, const void *data, size_t size)
|
|||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
spdk_jsonrpc_parse_request(struct spdk_jsonrpc_server_conn *conn, const void *json, size_t size)
|
jsonrpc_parse_request(struct spdk_jsonrpc_server_conn *conn, const void *json, size_t size)
|
||||||
{
|
{
|
||||||
struct spdk_jsonrpc_request *request;
|
struct spdk_jsonrpc_request *request;
|
||||||
ssize_t rc;
|
ssize_t rc;
|
||||||
@ -172,7 +172,7 @@ spdk_jsonrpc_parse_request(struct spdk_jsonrpc_server_conn *conn, const void *js
|
|||||||
request->recv_buffer = malloc(len + 1);
|
request->recv_buffer = malloc(len + 1);
|
||||||
if (request->recv_buffer == NULL) {
|
if (request->recv_buffer == NULL) {
|
||||||
SPDK_ERRLOG("Failed to allocate buffer to copy request (%zu bytes)\n", len + 1);
|
SPDK_ERRLOG("Failed to allocate buffer to copy request (%zu bytes)\n", len + 1);
|
||||||
spdk_jsonrpc_free_request(request);
|
jsonrpc_free_request(request);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -185,7 +185,7 @@ spdk_jsonrpc_parse_request(struct spdk_jsonrpc_server_conn *conn, const void *js
|
|||||||
if (request->values == NULL) {
|
if (request->values == NULL) {
|
||||||
SPDK_ERRLOG("Failed to allocate buffer for JSON values (%zu bytes)\n",
|
SPDK_ERRLOG("Failed to allocate buffer for JSON values (%zu bytes)\n",
|
||||||
request->values_cnt * sizeof(request->values[0]));
|
request->values_cnt * sizeof(request->values[0]));
|
||||||
spdk_jsonrpc_free_request(request);
|
jsonrpc_free_request(request);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -196,20 +196,20 @@ spdk_jsonrpc_parse_request(struct spdk_jsonrpc_server_conn *conn, const void *js
|
|||||||
request->send_buf = malloc(request->send_buf_size);
|
request->send_buf = malloc(request->send_buf_size);
|
||||||
if (request->send_buf == NULL) {
|
if (request->send_buf == NULL) {
|
||||||
SPDK_ERRLOG("Failed to allocate send_buf (%zu bytes)\n", request->send_buf_size);
|
SPDK_ERRLOG("Failed to allocate send_buf (%zu bytes)\n", request->send_buf_size);
|
||||||
spdk_jsonrpc_free_request(request);
|
jsonrpc_free_request(request);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
request->response = spdk_json_write_begin(spdk_jsonrpc_server_write_cb, request, 0);
|
request->response = spdk_json_write_begin(spdk_jsonrpc_server_write_cb, request, 0);
|
||||||
if (request->response == NULL) {
|
if (request->response == NULL) {
|
||||||
SPDK_ERRLOG("Failed to allocate response JSON write context.\n");
|
SPDK_ERRLOG("Failed to allocate response JSON write context.\n");
|
||||||
spdk_jsonrpc_free_request(request);
|
jsonrpc_free_request(request);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (rc <= 0 || rc > SPDK_JSONRPC_MAX_VALUES) {
|
if (rc <= 0 || rc > SPDK_JSONRPC_MAX_VALUES) {
|
||||||
SPDK_DEBUGLOG(SPDK_LOG_RPC, "JSON parse error\n");
|
SPDK_DEBUGLOG(SPDK_LOG_RPC, "JSON parse error\n");
|
||||||
spdk_jsonrpc_server_handle_error(request, SPDK_JSONRPC_ERROR_PARSE_ERROR);
|
jsonrpc_server_handle_error(request, SPDK_JSONRPC_ERROR_PARSE_ERROR);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Can't recover from parse error (no guaranteed resync point in streaming JSON).
|
* Can't recover from parse error (no guaranteed resync point in streaming JSON).
|
||||||
@ -223,7 +223,7 @@ spdk_jsonrpc_parse_request(struct spdk_jsonrpc_server_conn *conn, const void *js
|
|||||||
SPDK_JSON_PARSE_FLAG_DECODE_IN_PLACE);
|
SPDK_JSON_PARSE_FLAG_DECODE_IN_PLACE);
|
||||||
if (rc < 0 || rc > SPDK_JSONRPC_MAX_VALUES) {
|
if (rc < 0 || rc > SPDK_JSONRPC_MAX_VALUES) {
|
||||||
SPDK_DEBUGLOG(SPDK_LOG_RPC, "JSON parse error on second pass\n");
|
SPDK_DEBUGLOG(SPDK_LOG_RPC, "JSON parse error on second pass\n");
|
||||||
spdk_jsonrpc_server_handle_error(request, SPDK_JSONRPC_ERROR_PARSE_ERROR);
|
jsonrpc_server_handle_error(request, SPDK_JSONRPC_ERROR_PARSE_ERROR);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -233,10 +233,10 @@ spdk_jsonrpc_parse_request(struct spdk_jsonrpc_server_conn *conn, const void *js
|
|||||||
parse_single_request(request, request->values);
|
parse_single_request(request, request->values);
|
||||||
} else if (request->values[0].type == SPDK_JSON_VAL_ARRAY_BEGIN) {
|
} else if (request->values[0].type == SPDK_JSON_VAL_ARRAY_BEGIN) {
|
||||||
SPDK_DEBUGLOG(SPDK_LOG_RPC, "Got batch array (not currently supported)\n");
|
SPDK_DEBUGLOG(SPDK_LOG_RPC, "Got batch array (not currently supported)\n");
|
||||||
spdk_jsonrpc_server_handle_error(request, SPDK_JSONRPC_ERROR_INVALID_REQUEST);
|
jsonrpc_server_handle_error(request, SPDK_JSONRPC_ERROR_INVALID_REQUEST);
|
||||||
} else {
|
} else {
|
||||||
SPDK_DEBUGLOG(SPDK_LOG_RPC, "top-level JSON value was not array or object\n");
|
SPDK_DEBUGLOG(SPDK_LOG_RPC, "top-level JSON value was not array or object\n");
|
||||||
spdk_jsonrpc_server_handle_error(request, SPDK_JSONRPC_ERROR_INVALID_REQUEST);
|
jsonrpc_server_handle_error(request, SPDK_JSONRPC_ERROR_INVALID_REQUEST);
|
||||||
}
|
}
|
||||||
|
|
||||||
return len;
|
return len;
|
||||||
@ -273,7 +273,7 @@ skip_response(struct spdk_jsonrpc_request *request)
|
|||||||
request->send_len = 0;
|
request->send_len = 0;
|
||||||
spdk_json_write_end(request->response);
|
spdk_json_write_end(request->response);
|
||||||
request->response = NULL;
|
request->response = NULL;
|
||||||
spdk_jsonrpc_server_send_response(request);
|
jsonrpc_server_send_response(request);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -284,11 +284,11 @@ end_response(struct spdk_jsonrpc_request *request)
|
|||||||
request->response = NULL;
|
request->response = NULL;
|
||||||
|
|
||||||
spdk_jsonrpc_server_write_cb(request, "\n", 1);
|
spdk_jsonrpc_server_write_cb(request, "\n", 1);
|
||||||
spdk_jsonrpc_server_send_response(request);
|
jsonrpc_server_send_response(request);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
spdk_jsonrpc_free_request(struct spdk_jsonrpc_request *request)
|
jsonrpc_free_request(struct spdk_jsonrpc_request *request)
|
||||||
{
|
{
|
||||||
if (!request) {
|
if (!request) {
|
||||||
return;
|
return;
|
||||||
|
@ -117,10 +117,10 @@ spdk_jsonrpc_server_free_conn_request(struct spdk_jsonrpc_server_conn *conn)
|
|||||||
{
|
{
|
||||||
struct spdk_jsonrpc_request *request;
|
struct spdk_jsonrpc_request *request;
|
||||||
|
|
||||||
spdk_jsonrpc_free_request(conn->send_request);
|
jsonrpc_free_request(conn->send_request);
|
||||||
conn->send_request = NULL ;
|
conn->send_request = NULL ;
|
||||||
while ((request = spdk_jsonrpc_server_dequeue_request(conn)) != NULL) {
|
while ((request = spdk_jsonrpc_server_dequeue_request(conn)) != NULL) {
|
||||||
spdk_jsonrpc_free_request(request);
|
jsonrpc_free_request(request);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -244,14 +244,14 @@ spdk_jsonrpc_server_accept(struct spdk_jsonrpc_server *server)
|
|||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
spdk_jsonrpc_server_handle_request(struct spdk_jsonrpc_request *request,
|
jsonrpc_server_handle_request(struct spdk_jsonrpc_request *request,
|
||||||
const struct spdk_json_val *method, const struct spdk_json_val *params)
|
const struct spdk_json_val *method, const struct spdk_json_val *params)
|
||||||
{
|
{
|
||||||
request->conn->server->handle_request(request, method, params);
|
request->conn->server->handle_request(request, method, params);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
spdk_jsonrpc_server_handle_error(struct spdk_jsonrpc_request *request, int error)
|
jsonrpc_server_handle_error(struct spdk_jsonrpc_request *request, int error)
|
||||||
{
|
{
|
||||||
const char *msg;
|
const char *msg;
|
||||||
|
|
||||||
@ -309,7 +309,7 @@ spdk_jsonrpc_server_conn_recv(struct spdk_jsonrpc_server_conn *conn)
|
|||||||
|
|
||||||
offset = 0;
|
offset = 0;
|
||||||
do {
|
do {
|
||||||
rc = spdk_jsonrpc_parse_request(conn, conn->recv_buf + offset, conn->recv_len - offset);
|
rc = jsonrpc_parse_request(conn, conn->recv_buf + offset, conn->recv_len - offset);
|
||||||
if (rc < 0) {
|
if (rc < 0) {
|
||||||
SPDK_ERRLOG("jsonrpc parse request failed\n");
|
SPDK_ERRLOG("jsonrpc parse request failed\n");
|
||||||
return -1;
|
return -1;
|
||||||
@ -332,7 +332,7 @@ spdk_jsonrpc_server_conn_recv(struct spdk_jsonrpc_server_conn *conn)
|
|||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
spdk_jsonrpc_server_send_response(struct spdk_jsonrpc_request *request)
|
jsonrpc_server_send_response(struct spdk_jsonrpc_request *request)
|
||||||
{
|
{
|
||||||
struct spdk_jsonrpc_server_conn *conn = request->conn;
|
struct spdk_jsonrpc_server_conn *conn = request->conn;
|
||||||
|
|
||||||
@ -386,7 +386,7 @@ more:
|
|||||||
* Free it and set send_request to NULL to move on to the next queued response.
|
* Free it and set send_request to NULL to move on to the next queued response.
|
||||||
*/
|
*/
|
||||||
conn->send_request = NULL;
|
conn->send_request = NULL;
|
||||||
spdk_jsonrpc_free_request(request);
|
jsonrpc_free_request(request);
|
||||||
goto more;
|
goto more;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -47,7 +47,7 @@ const struct spdk_json_val *g_cur_param;
|
|||||||
#define PARSE_PASS(in, trailing) \
|
#define PARSE_PASS(in, trailing) \
|
||||||
CU_ASSERT(g_cur_param == NULL); \
|
CU_ASSERT(g_cur_param == NULL); \
|
||||||
g_cur_param = NULL; \
|
g_cur_param = NULL; \
|
||||||
CU_ASSERT(spdk_jsonrpc_parse_request(conn, in, sizeof(in) - 1) == sizeof(in) - sizeof(trailing))
|
CU_ASSERT(jsonrpc_parse_request(conn, in, sizeof(in) - 1) == sizeof(in) - sizeof(trailing))
|
||||||
|
|
||||||
#define REQ_BEGIN(expected_error) \
|
#define REQ_BEGIN(expected_error) \
|
||||||
if (expected_error != 0 ) { \
|
if (expected_error != 0 ) { \
|
||||||
@ -56,7 +56,7 @@ const struct spdk_json_val *g_cur_param;
|
|||||||
}
|
}
|
||||||
|
|
||||||
#define PARSE_FAIL(in) \
|
#define PARSE_FAIL(in) \
|
||||||
CU_ASSERT(spdk_jsonrpc_parse_request(conn, in, sizeof(in) - 1) < 0);
|
CU_ASSERT(jsonrpc_parse_request(conn, in, sizeof(in) - 1) < 0);
|
||||||
|
|
||||||
#define REQ_BEGIN_VALID() \
|
#define REQ_BEGIN_VALID() \
|
||||||
REQ_BEGIN(0); \
|
REQ_BEGIN(0); \
|
||||||
@ -158,7 +158,7 @@ ut_jsonrpc_free_request(struct spdk_jsonrpc_request *request, int err)
|
|||||||
spdk_jsonrpc_send_error_response_fmt(request, err, "UT error response");
|
spdk_jsonrpc_send_error_response_fmt(request, err, "UT error response");
|
||||||
}
|
}
|
||||||
|
|
||||||
spdk_jsonrpc_free_request(request);
|
jsonrpc_free_request(request);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -173,20 +173,20 @@ ut_handle(struct spdk_jsonrpc_request *request, int error, const struct spdk_jso
|
|||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
spdk_jsonrpc_server_handle_error(struct spdk_jsonrpc_request *request, int error)
|
jsonrpc_server_handle_error(struct spdk_jsonrpc_request *request, int error)
|
||||||
{
|
{
|
||||||
ut_handle(request, error, NULL, NULL);
|
ut_handle(request, error, NULL, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
spdk_jsonrpc_server_handle_request(struct spdk_jsonrpc_request *request,
|
jsonrpc_server_handle_request(struct spdk_jsonrpc_request *request,
|
||||||
const struct spdk_json_val *method, const struct spdk_json_val *params)
|
const struct spdk_json_val *method, const struct spdk_json_val *params)
|
||||||
{
|
{
|
||||||
ut_handle(request, 0, method, params);
|
ut_handle(request, 0, method, params);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
spdk_jsonrpc_server_send_response(struct spdk_jsonrpc_request *request)
|
jsonrpc_server_send_response(struct spdk_jsonrpc_request *request)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -366,7 +366,7 @@ test_parse_request_streaming(void)
|
|||||||
|
|
||||||
/* Try every partial length up to the full request length */
|
/* Try every partial length up to the full request length */
|
||||||
for (i = 0; i < len; i++) {
|
for (i = 0; i < len; i++) {
|
||||||
int rc = spdk_jsonrpc_parse_request(conn, json_req, i);
|
int rc = jsonrpc_parse_request(conn, json_req, i);
|
||||||
/* Partial request - no data consumed */
|
/* Partial request - no data consumed */
|
||||||
CU_ASSERT(rc == 0);
|
CU_ASSERT(rc == 0);
|
||||||
CU_ASSERT(g_request == NULL);
|
CU_ASSERT(g_request == NULL);
|
||||||
@ -376,7 +376,7 @@ test_parse_request_streaming(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Verify that full request can be parsed successfully */
|
/* Verify that full request can be parsed successfully */
|
||||||
CU_ASSERT(spdk_jsonrpc_parse_request(conn, json_req, len) == (ssize_t)len);
|
CU_ASSERT(jsonrpc_parse_request(conn, json_req, len) == (ssize_t)len);
|
||||||
FREE_REQUEST();
|
FREE_REQUEST();
|
||||||
|
|
||||||
CU_ASSERT(conn->outstanding_requests == 0);
|
CU_ASSERT(conn->outstanding_requests == 0);
|
||||||
|
Loading…
Reference in New Issue
Block a user