X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=src%2Fregex%2Fregex_block_lib.c;h=782827d5db0424782f393d9557293fe01f3410d8;hb=f1ca38573f22205e28ac482efebe463696c9c2c7;hp=a2de3d4f8ba948948d8f4bbe1f23546173fde9ea;hpb=2009c8d07d00b2e731d1afe11ccb457017382985;p=oweals%2Fgnunet.git diff --git a/src/regex/regex_block_lib.c b/src/regex/regex_block_lib.c index a2de3d4f8..782827d5d 100644 --- a/src/regex/regex_block_lib.c +++ b/src/regex/regex_block_lib.c @@ -97,8 +97,8 @@ GNUNET_NETWORK_STRUCT_END * * @param block block to test * @param size number of bytes in block - * @return GNUNET_YES if the block is accepting, GNUNET_NO if not - */ + * @return #GNUNET_YES if the block is accepting, #GNUNET_NO if not + */ int GNUNET_BLOCK_is_accepting (const struct RegexBlock *block, size_t size) @@ -118,8 +118,7 @@ GNUNET_BLOCK_is_accepting (const struct RegexBlock *block, * @param proof partial regex of a state * @param proof_len number of bytes in 'proof' * @param key hash of a state. - * - * @return GNUNET_OK if the proof is valid for the given key. + * @return #GNUNET_OK if the proof is valid for the given key. */ int REGEX_BLOCK_check_proof (const char *proof, @@ -164,7 +163,7 @@ struct CheckEdgeContext * @param token Token that follows to next state. * @param len Lenght of token. * @param key Hash of next state. - * + * * @return GNUNET_YES, to keep iterating */ static int @@ -175,7 +174,7 @@ check_edge (void *cls, { struct CheckEdgeContext *ctx = cls; - GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, + GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "edge %.*s [%u]: %s->%s\n", (int) len, token, len, GNUNET_h2s(key)); if (NULL == ctx->xquery) @@ -196,10 +195,9 @@ check_edge (void *cls, * @param query the query for the block * @param xquery String describing the edge we are looking for. * Can be NULL in case this is a put block. - * - * @return GNUNET_OK in case it's fine. - * GNUNET_NO in case the xquery exists and is not found (IRRELEVANT). - * GNUNET_SYSERR if the block is invalid. + * @return #GNUNET_OK in case it's fine. + * #GNUNET_NO in case the xquery exists and is not found (IRRELEVANT). + * #GNUNET_SYSERR if the block is invalid. */ int REGEX_BLOCK_check (const struct RegexBlock *block, @@ -212,7 +210,7 @@ REGEX_BLOCK_check (const struct RegexBlock *block, int res; LOG (GNUNET_ERROR_TYPE_DEBUG, "Block check\n"); - if (GNUNET_OK != + if (GNUNET_OK != REGEX_BLOCK_get_key (block, size, &key)) { @@ -253,12 +251,12 @@ REGEX_BLOCK_check (const struct RegexBlock *block, * @param block block to get the key from * @param block_len number of bytes in block * @param key where to store the key - * @return GNUNET_OK on success, GNUNET_SYSERR if the block is malformed + * @return #GNUNET_OK on success, #GNUNET_SYSERR if the block is malformed */ int REGEX_BLOCK_get_key (const struct RegexBlock *block, - size_t block_len, - struct GNUNET_HashCode *key) + size_t block_len, + struct GNUNET_HashCode *key) { uint16_t len; const struct GNUNET_HashCode *destinations; @@ -267,17 +265,17 @@ REGEX_BLOCK_get_key (const struct RegexBlock *block, uint16_t num_edges; size_t total; - if (block_len < sizeof (struct RegexBlock)) + if (block_len < sizeof (struct RegexBlock)) { GNUNET_break_op (0); return GNUNET_SYSERR; - } + } num_destinations = ntohs (block->num_destinations); num_edges = ntohs (block->num_edges); len = ntohs (block->proof_len); destinations = (const struct GNUNET_HashCode *) &block[1]; edges = (const struct EdgeInfo *) &destinations[num_destinations]; - total = sizeof (struct RegexBlock) + num_destinations * sizeof (struct GNUNET_HashCode) + num_edges + sizeof (struct EdgeInfo) + len; + total = sizeof (struct RegexBlock) + num_destinations * sizeof (struct GNUNET_HashCode) + num_edges * sizeof (struct EdgeInfo) + len; if (block_len < total) { GNUNET_break_op (0); @@ -292,14 +290,13 @@ REGEX_BLOCK_get_key (const struct RegexBlock *block, * Iterate over all edges of a block of a regex state. * * @param block Block to iterate over. - * @param size Size of block. + * @param size Size of @a block. * @param iterator Function to call on each edge in the block. - * @param iter_cls Closure for the iterator. - * - * @return GNUNET_SYSERR if an error has been encountered. - * GNUNET_OK if no error has been encountered. + * @param iter_cls Closure for the @a iterator. + * @return #GNUNET_SYSERR if an error has been encountered. + * #GNUNET_OK if no error has been encountered. * Note that if the iterator stops the iteration by returning - * GNUNET_NO, the block will no longer be checked for further errors. + * #GNUNET_NO, the block will no longer be checked for further errors. * The return value will be GNUNET_OK meaning that no errors were * found until the edge last notified to the iterator, but there might * be errors in further edges. @@ -321,7 +318,7 @@ REGEX_BLOCK_iterate (const struct RegexBlock *block, size_t off; LOG (GNUNET_ERROR_TYPE_DEBUG, "Block iterate\n"); - if (size < sizeof (struct RegexBlock)) + if (size < sizeof (struct RegexBlock)) { GNUNET_break_op (0); return GNUNET_SYSERR; @@ -333,14 +330,14 @@ REGEX_BLOCK_iterate (const struct RegexBlock *block, edges = (const struct EdgeInfo *) &destinations[num_destinations]; aux = (const char *) &edges[num_edges]; total = sizeof (struct RegexBlock) + num_destinations * sizeof (struct GNUNET_HashCode) + num_edges * sizeof (struct EdgeInfo) + len; - if (size < total) + if (size < total) { GNUNET_break_op (0); return GNUNET_SYSERR; } for (n=0;n UINT16_MAX) + if (len > UINT16_MAX) { GNUNET_break (0); return NULL; @@ -413,7 +411,7 @@ REGEX_BLOCK_create (const char *proof, for (i=0;i UINT16_MAX) + if (slen > UINT16_MAX) { GNUNET_break (0); return NULL; @@ -449,7 +447,7 @@ REGEX_BLOCK_create (const char *proof, edgeinfos = (struct EdgeInfo *) &dests[unique_destinations]; aux = (char *) &edgeinfos[num_edges]; off = len; - memcpy (aux, proof, len); + memcpy (aux, proof, len); for (i=0;i