X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=libmemcached%2Fprotocol%2Fpedantic.c;h=5d750c0a8792c3888095057875025fcc0c338410;hb=8fd8f655540e3d6aa0b0a3eb0f4f7df1be2e6542;hp=884f6721574b91b4357c2c2bebe18ed3bbc0fc55;hpb=9131482f7923cf9e90b5a715b38e70e3a229b052;p=m6w6%2Flibmemcached diff --git a/libmemcached/protocol/pedantic.c b/libmemcached/protocol/pedantic.c index 884f6721..5d750c0a 100644 --- a/libmemcached/protocol/pedantic.c +++ b/libmemcached/protocol/pedantic.c @@ -1,5 +1,5 @@ /* -*- Mode: C; tab-width: 2; c-basic-offset: 2; indent-tabs-mode: nil -*- */ -#include "common.h" +#include "libmemcached/protocol/common.h" #include #include @@ -7,7 +7,7 @@ #define ensure(a) if (!(a)) { return false; } -bool memcached_binary_protocol_pedantic_check_request(protocol_binary_request_header *request) +bool memcached_binary_protocol_pedantic_check_request(const protocol_binary_request_header *request) { ensure(request->request.magic == PROTOCOL_BINARY_REQ); ensure(request->request.datatype == PROTOCOL_BINARY_RAW_BYTES); @@ -19,7 +19,7 @@ bool memcached_binary_protocol_pedantic_check_request(protocol_binary_request_he uint16_t keylen= ntohs(request->request.keylen); uint8_t extlen= request->request.extlen; uint32_t bodylen= ntohl(request->request.bodylen); - + ensure(bodylen >= (keylen + extlen)); switch (opcode) { @@ -83,7 +83,7 @@ bool memcached_binary_protocol_pedantic_check_request(protocol_binary_request_he /* May have key, but not value */ ensure(keylen == bodylen); break; - + case PROTOCOL_BINARY_CMD_APPEND: case PROTOCOL_BINARY_CMD_APPENDQ: case PROTOCOL_BINARY_CMD_PREPEND: @@ -99,8 +99,8 @@ bool memcached_binary_protocol_pedantic_check_request(protocol_binary_request_he return true; } -bool memcached_binary_protocol_pedantic_check_response(protocol_binary_request_header *request, - protocol_binary_response_header *response) +bool memcached_binary_protocol_pedantic_check_response(const protocol_binary_request_header *request, + const protocol_binary_response_header *response) { ensure(response->response.magic == PROTOCOL_BINARY_RES); ensure(response->response.datatype == PROTOCOL_BINARY_RAW_BYTES); @@ -109,7 +109,7 @@ bool memcached_binary_protocol_pedantic_check_response(protocol_binary_request_h uint16_t status= ntohs(response->response.status); uint8_t opcode= response->response.opcode; - if (status == PROTOCOL_BINARY_RESPONSE_SUCCESS) + if (status == PROTOCOL_BINARY_RESPONSE_SUCCESS) { switch (opcode) { case PROTOCOL_BINARY_CMD_ADDQ: @@ -189,11 +189,11 @@ bool memcached_binary_protocol_pedantic_check_response(protocol_binary_request_h break; } } - else + else { ensure(response->response.cas == 0); ensure(response->response.extlen == 0); - if (opcode != PROTOCOL_BINARY_CMD_GETK) + if (opcode != PROTOCOL_BINARY_CMD_GETK) { ensure(response->response.keylen == 0); }