diff options
author | jboeuf <jboeuf@users.noreply.github.com> | 2016-12-27 15:50:32 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-12-27 15:50:32 -0800 |
commit | 578378256c306b0ef777816e83bbf1af0a04fdea (patch) | |
tree | af2757c1c259e07991295346b60141107f52f712 /src/core/lib/support | |
parent | 22b28264f9242b6d049f9e6d5b792bd5be048a97 (diff) | |
parent | 964d7bb4828461f4c4d51cfe7f774367fc162013 (diff) |
Merge pull request #8788 from jboeuf/fix_jwt_verifier
Fix jwt verifier
Diffstat (limited to 'src/core/lib/support')
-rw-r--r-- | src/core/lib/support/string.c | 11 | ||||
-rw-r--r-- | src/core/lib/support/string.h | 2 |
2 files changed, 13 insertions, 0 deletions
diff --git a/src/core/lib/support/string.c b/src/core/lib/support/string.c index f10a30f0fd..f263f82baf 100644 --- a/src/core/lib/support/string.c +++ b/src/core/lib/support/string.c @@ -275,3 +275,14 @@ int gpr_stricmp(const char *a, const char *b) { } while (ca == cb && ca && cb); return ca - cb; } + +void *gpr_memrchr(const void *s, int c, size_t n) { + if (s == NULL) return NULL; + char *b = (char *)s; + for (size_t i = 0; i < n; i++) { + if (b[n - i - 1] == c) { + return &b[n - i - 1]; + } + } + return NULL; +} diff --git a/src/core/lib/support/string.h b/src/core/lib/support/string.h index e933e2eb46..6d1f7cc632 100644 --- a/src/core/lib/support/string.h +++ b/src/core/lib/support/string.h @@ -118,6 +118,8 @@ char *gpr_strvec_flatten(gpr_strvec *strs, size_t *total_length); lower(a)==lower(b), >0 if lower(a)>lower(b) */ int gpr_stricmp(const char *a, const char *b); +void *gpr_memrchr(const void *s, int c, size_t n); + #ifdef __cplusplus } #endif |