Repository: trafficserver Updated Branches: refs/heads/master a24232f8c -> e427342b9
TS-3968: remove dead ink_auth_api code Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/e427342b Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/e427342b Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/e427342b Branch: refs/heads/master Commit: e427342b983498635dc5aaaf72b27cc4b179447d Parents: a24232f Author: James Peach <[email protected]> Authored: Tue Oct 13 21:37:30 2015 -0700 Committer: James Peach <[email protected]> Committed: Tue Oct 13 21:37:30 2015 -0700 ---------------------------------------------------------------------- lib/ts/Makefile.am | 2 - lib/ts/ink_auth_api.cc | 81 -------------------- lib/ts/ink_auth_api.h | 183 -------------------------------------------- 3 files changed, 266 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/trafficserver/blob/e427342b/lib/ts/Makefile.am ---------------------------------------------------------------------- diff --git a/lib/ts/Makefile.am b/lib/ts/Makefile.am index dde1643..fcd6e73 100644 --- a/lib/ts/Makefile.am +++ b/lib/ts/Makefile.am @@ -117,8 +117,6 @@ libtsutil_la_SOURCES = \ ink_assert.cc \ ink_assert.h \ ink_atomic.h \ - ink_auth_api.cc \ - ink_auth_api.h \ ink_base64.cc \ ink_base64.h \ ink_cap.cc \ http://git-wip-us.apache.org/repos/asf/trafficserver/blob/e427342b/lib/ts/ink_auth_api.cc ---------------------------------------------------------------------- diff --git a/lib/ts/ink_auth_api.cc b/lib/ts/ink_auth_api.cc deleted file mode 100644 index 34aab2d..0000000 --- a/lib/ts/ink_auth_api.cc +++ /dev/null @@ -1,81 +0,0 @@ -/** @file - - PE/TE authentication definitions - - @section license License - - Licensed to the Apache Software Foundation (ASF) under one - or more contributor license agreements. See the NOTICE file - distributed with this work for additional information - regarding copyright ownership. The ASF licenses this file - to you under the Apache License, Version 2.0 (the - "License"); you may not use this file except in compliance - with the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - */ - -#include <time.h> -#include <stdint.h> -#include "ts/ink_rand.h" -#include "ts/ink_code.h" -#include "ts/ink_auth_api.h" - -static int s_rand_seed = time(NULL); // + s_rand_seed; -static InkRand s_rand_gen(ink_rand_r((unsigned int *) & s_rand_seed) ^ (uintptr_t)&s_rand_seed); - -inline uint32_t -ink_get_rand_intrn() -{ - return s_rand_gen.random(); -} - -inline void -ink_make_token_intrn(INK_AUTH_TOKEN *tok, const INK_AUTH_SEED *const *seeds, int slen) -{ - INK_DIGEST_CTX ctx; - ink_code_incr_md5_init(&ctx); - while (slen-- > 0) { - ink_code_incr_md5_update(&ctx, (const char *)seeds[slen]->data(), seeds[slen]->length()); - } - ink_code_incr_md5_final((char *)&(tok->u8[0]), &ctx); -} - -uint32_t -ink_get_rand() -{ - return ink_get_rand_intrn(); -} - -void -ink_make_token(INK_AUTH_TOKEN *tok, const INK_AUTH_TOKEN &mask, const INK_AUTH_SEED *const *seeds, int slen) -{ - ink_make_token_intrn(tok, seeds, slen); - for (int i = 3; i >= 0; i--) // randomize masked bits - tok->u32[i] ^= mask.u32[i] & ink_get_rand_intrn(); -} - -uint32_t -ink_make_token32(uint32_t mask, const INK_AUTH_SEED *const *seeds, int slen) -{ - INK_AUTH_TOKEN tok; - ink_make_token_intrn(&tok, seeds, slen); - tok.u64[1] ^= tok.u64[0]; - tok.u32[3] ^= tok.u32[2]; - return tok.u32[3] ^ (mask & ink_get_rand_intrn()); -} - -uint64_t -ink_make_token64(uint64_t mask, const INK_AUTH_SEED *const *seeds, int slen) -{ - INK_AUTH_TOKEN tok; - ink_make_token_intrn(&tok, seeds, slen); - tok.u64[1] ^= tok.u64[0]; - return tok.u64[1] ^ (mask & ((uint64_t)ink_get_rand_intrn() + (((uint64_t)ink_get_rand_intrn()) << 32))); -} http://git-wip-us.apache.org/repos/asf/trafficserver/blob/e427342b/lib/ts/ink_auth_api.h ---------------------------------------------------------------------- diff --git a/lib/ts/ink_auth_api.h b/lib/ts/ink_auth_api.h deleted file mode 100644 index 93071be..0000000 --- a/lib/ts/ink_auth_api.h +++ /dev/null @@ -1,183 +0,0 @@ -/** @file - - PE/TE authentication definitions - - @section license License - - Licensed to the Apache Software Foundation (ASF) under one - or more contributor license agreements. See the NOTICE file - distributed with this work for additional information - regarding copyright ownership. The ASF licenses this file - to you under the Apache License, Version 2.0 (the - "License"); you may not use this file except in compliance - with the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - */ - -#ifndef __INK_AUTH_API_H_INCLUDDED__ -#define __INK_AUTH_API_H_INCLUDDED__ - -#include <sys/types.h> -#include <string.h> - -#include "ts/ink_defs.h" - -typedef union { - uint64_t u64[2]; - uint32_t u32[4]; - uint16_t u16[8]; - uint8_t u8[16]; -} INK_AUTH_TOKEN; - -class INK_AUTH_SEED -{ -public: - const void * - data() const - { - return m_data; - } - unsigned - length() const - { - return m_length; - } - - inline INK_AUTH_SEED(const void *x, unsigned ln) { init(x, ln); } - - inline INK_AUTH_SEED(const uint8_t &x) { init((const void *)&x, sizeof(x)); } - inline INK_AUTH_SEED(const uint16_t &x) { init((const void *)&x, sizeof(x)); } - inline INK_AUTH_SEED(const uint32_t &x) { init((const void *)&x, sizeof(x)); } - inline INK_AUTH_SEED(const uint64_t &x) { init((const void *)&x, sizeof(x)); } - inline INK_AUTH_SEED(const int8_t &x) { init((const void *)&x, sizeof(x)); } - inline INK_AUTH_SEED(const int16_t &x) { init((const void *)&x, sizeof(x)); } - inline INK_AUTH_SEED(const int32_t &x) { init((const void *)&x, sizeof(x)); } - inline INK_AUTH_SEED(const int64_t &x) { init((const void *)&x, sizeof(x)); } - - inline INK_AUTH_SEED(const INK_AUTH_TOKEN &x) { init((const void *)&(x.u8[0]), sizeof(x.u8)); } - - inline INK_AUTH_SEED(const char *str) { init((const void *)str, strlen((const char *)str)); } - - inline INK_AUTH_SEED(const char *str, unsigned ln) { init((const void *)str, ln); } - - inline INK_AUTH_SEED(const unsigned char *str) { init((const void *)str, strlen((const char *)str)); } - - inline INK_AUTH_SEED(const unsigned char *str, unsigned ln) { init((const void *)str, ln); } - -protected: - void - init(const void *d, unsigned l) - { - m_data = d; - m_length = l; - } - - const void *m_data; - unsigned m_length; -}; - - -void ink_make_token(INK_AUTH_TOKEN *tok, const INK_AUTH_TOKEN &mask, const INK_AUTH_SEED *const *seeds, int slen); - -uint32_t ink_make_token32(uint32_t mask, const INK_AUTH_SEED *const *seeds, int slen); -uint64_t ink_make_token64(uint64_t mask, const INK_AUTH_SEED *const *seeds, int slen); - -uint32_t ink_get_rand(); - -#define INK_TOKENS_EQUAL(m, t1, t2) ((((t1) ^ (t2)) & (~(m))) == 0) - -// -// Helper functions - wiil create INK_AUTH_SEEDs from base types on fly -// -inline uint32_t -ink_make_token32(uint32_t mask, const INK_AUTH_SEED &s1) -{ - const INK_AUTH_SEED *s[] = {&s1}; - return ink_make_token32(mask, s, sizeof(s) / sizeof(*s)); -} - -inline uint32_t -ink_make_token32(uint32_t mask, const INK_AUTH_SEED &s1, const INK_AUTH_SEED &s2) -{ - const INK_AUTH_SEED *s[] = {&s1, &s2}; - return ink_make_token32(mask, s, sizeof(s) / sizeof(*s)); -} - -inline uint32_t -ink_make_token32(uint32_t mask, const INK_AUTH_SEED &s1, const INK_AUTH_SEED &s2, const INK_AUTH_SEED &s3) -{ - const INK_AUTH_SEED *s[] = {&s1, &s2, &s3}; - return ink_make_token32(mask, s, sizeof(s) / sizeof(*s)); -} - -inline uint32_t -ink_make_token32(uint32_t mask, const INK_AUTH_SEED &s1, const INK_AUTH_SEED &s2, const INK_AUTH_SEED &s3, const INK_AUTH_SEED &s4) -{ - const INK_AUTH_SEED *s[] = {&s1, &s2, &s3, &s4}; - return ink_make_token32(mask, s, sizeof(s) / sizeof(*s)); -} - -inline uint32_t -ink_make_token32(uint32_t mask, const INK_AUTH_SEED &s1, const INK_AUTH_SEED &s2, const INK_AUTH_SEED &s3, const INK_AUTH_SEED &s4, - const INK_AUTH_SEED &s5) -{ - const INK_AUTH_SEED *s[] = {&s1, &s2, &s3, &s4, &s5}; - return ink_make_token32(mask, s, sizeof(s) / sizeof(*s)); -} - -inline uint64_t -ink_make_token64(uint64_t mask, const INK_AUTH_SEED &s1) -{ - const INK_AUTH_SEED *s[] = {&s1}; - return ink_make_token64(mask, s, sizeof(s) / sizeof(*s)); -} - -inline uint64_t -ink_make_token64(uint64_t mask, const INK_AUTH_SEED &s1, const INK_AUTH_SEED &s2) -{ - const INK_AUTH_SEED *s[] = {&s1, &s2}; - return ink_make_token64(mask, s, sizeof(s) / sizeof(*s)); -} - -inline uint64_t -ink_make_token64(uint64_t mask, const INK_AUTH_SEED &s1, const INK_AUTH_SEED &s2, const INK_AUTH_SEED &s3) -{ - const INK_AUTH_SEED *s[] = {&s1, &s2, &s3}; - return ink_make_token64(mask, s, sizeof(s) / sizeof(*s)); -} - -inline uint64_t -ink_make_token64(uint64_t mask, const INK_AUTH_SEED &s1, const INK_AUTH_SEED &s2, const INK_AUTH_SEED &s3, const INK_AUTH_SEED &s4) -{ - const INK_AUTH_SEED *s[] = {&s1, &s2, &s3, &s4}; - return ink_make_token64(mask, s, sizeof(s) / sizeof(*s)); -} - -inline uint64_t -ink_make_token64(uint64_t mask, const INK_AUTH_SEED &s1, const INK_AUTH_SEED &s2, const INK_AUTH_SEED &s3, const INK_AUTH_SEED &s4, - const INK_AUTH_SEED &s5) -{ - const INK_AUTH_SEED *s[] = {&s1, &s2, &s3, &s4, &s5}; - return ink_make_token64(mask, s, sizeof(s) / sizeof(*s)); -} - -inline int64_t -INK_AUTH_MAKE_INT_64(uint32_t h, uint32_t l) -{ - return int64_t((((uint64_t)h) << 32) + (uint32_t)l); -} - -inline int64_t -INK_AUTH_MAKE_INT_64(uint32_t u) -{ - return INK_AUTH_MAKE_INT_64(u, u); -} - -#endif // #ifndef __INK_AUTH_API_H_INCLUDDED__
