Hi Again,
Added a few #include <stdio> worked until the compile bombed on crypto.ccNot sure how to fix this code.Getting late and going to bed now but will continue this tomorrow.thanks again for your help!Joejcardani@jcardani-ThinkCentre-XXXX ~/pybombs/src/gr-op25test/op25/build $ make
Scanning dependencies of target gnuradio-op25
[ 1%] Building CXX object op25/gr-op25/lib/CMakeFiles/gnuradio-op25.dir/crypto.cc.o
In file included from /home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:1:0:
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.h:17:14: error: ‘uint8_t’ was not declared in this scope
std::vector<uint8_t> mi;
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.h:17:21: error: template argument 1 is invalid
std::vector<uint8_t> mi;
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.h:17:21: error: template argument 2 is invalid
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.h:18:5: error: ‘uint16_t’ does not name a type
uint16_t kid;
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.h:19:2: error: ‘uint8_t’ does not name a type
uint8_t algid;
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.h: In constructor ‘CryptoState::CryptoState()’:
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.h:14:2: error: class ‘CryptoState’ does not have any field named ‘kid’
kid(0), algid(0), mi(MESSAGE_INDICATOR_LENGTH)
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.h:14:10: error: class ‘CryptoState’ does not have any field named ‘algid’
kid(0), algid(0), mi(MESSAGE_INDICATOR_LENGTH)
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.h: At global scope:
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.h:32:22: error: ‘uint8_t’ was not declared in this scope
typedef std::vector<uint8_t> key_type;
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.h:32:29: error: template argument 1 is invalid
typedef std::vector<uint8_t> key_type;
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.h:32:29: error: template argument 2 is invalid
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.h:33:19: error: ‘uint16_t’ was not declared in this scope
typedef std::map<uint16_t, key_type > key_map_type;
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.h:33:38: error: template argument 1 is invalid
typedef std::map<uint16_t, key_type > key_map_type;
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.h:33:38: error: template argument 3 is invalid
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.h:33:38: error: template argument 4 is invalid
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.h:34:10: error: ‘uint8_t’ does not name a type
typedef uint8_t type_id;
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.h:41:16: error: ‘type_id’ does not name a type
virtual const type_id id() const=0;
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.h:45:10: error: ‘uint64_t’ does not name a type
virtual uint64_t generate(size_t n_bits)=0; // Can request up to 64 bits of key stream at one time
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.h:56:61: error: ‘crypto_algorithm::type_id’ has not been declared
virtual crypto_algorithm::sptr algorithm(crypto_algorithm::type_id algid);
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:12:38: error: ‘uint64_t’ was not declared in this scope
static unsigned long long swap_bytes(uint64_t l)
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:13:1: error: expected ‘,’ or ‘;’ before ‘{’ token
{
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:65:5: error: ‘uint16_t’ does not name a type
uint16_t m_current_kid;
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:86:8: error: ‘type_id’ does not name a type
const type_id id() const
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:163:14: error: ‘uint64_t’ has not been declared
void set_iv(uint64_t iv)
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc: In constructor ‘des_ofb::des_ofb()’:
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:71:5: error: class ‘des_ofb’ does not have any field named ‘m_current_kid’
: m_current_kid(-1)
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:73:41: error: ‘memset’ was not declared in this scope
memset(&m_ksDES, 0, sizeof(m_ksDES));
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc: In member function ‘virtual bool des_ofb::update(const CryptoState&)’:
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:93:7: error: ‘m_current_kid’ was not declared in this scope
if (m_current_kid != state.kid)
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:93:30: error: ‘const struct CryptoState’ has no member named ‘kid’
if (m_current_kid != state.kid)
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:95:18: error: request for member ‘empty’ in ‘((des_ofb*)this)->des_ofb::m_key_map’, which is of non-class type ‘crypto_algorithm::key_map_type {aka int}’
if (m_key_map.empty())
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:101:28: error: expected initializer before ‘it’
key_map_type::iterator it = m_key_map.find(state.kid);
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:102:9: error: ‘it’ was not declared in this scope
if (it != m_key_map.end())
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:102:25: error: request for member ‘end’ in ‘((des_ofb*)this)->des_ofb::m_key_map’, which is of non-class type ‘crypto_algorithm::key_map_type {aka int}’
if (it != m_key_map.end())
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:106:29: error: request for member ‘empty’ in ‘((des_ofb*)this)->des_ofb::m_default_key’, which is of non-class type ‘crypto_algorithm::key_type {aka int}’
else if (!m_default_key.empty())
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:108:33: error: ‘stderr’ was not declared in this scope
/*if (m_verbose) */fprintf(stderr, "Key 0x%04x not found in key map - using default key\n", state.kid);
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:108:104: error: ‘const struct CryptoState’ has no member named ‘kid’
/*if (m_verbose) */fprintf(stderr, "Key 0x%04x not found in key map - using default key\n", state.kid);
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:108:107: error: ‘fprintf’ was not declared in this scope
/*if (m_verbose) */fprintf(stderr, "Key 0x%04x not found in key map - using default key\n", state.kid);
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:114:33: error: ‘stderr’ was not declared in this scope
/*if (m_verbose) */fprintf(stderr, "Key 0x%04x not found in key map and no default key\n", state.kid);
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:114:103: error: ‘const struct CryptoState’ has no member named ‘kid’
/*if (m_verbose) */fprintf(stderr, "Key 0x%04x not found in key map and no default key\n", state.kid);
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:114:106: error: ‘fprintf’ was not declared in this scope
/*if (m_verbose) */fprintf(stderr, "Key 0x%04x not found in key map and no default key\n", state.kid);
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:118:26: error: ‘const struct CryptoState’ has no member named ‘kid’
m_current_kid = state.kid;
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:121:3: error: ‘uint64_t’ was not declared in this scope
uint64_t iv = 0;
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:121:12: error: expected ‘;’ before ‘iv’
uint64_t iv = 0;
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:122:30: error: ‘iv’ was not declared in this scope
size_t n = std::min(sizeof(iv), state.mi.size());
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:122:44: error: request for member ‘size’ in ‘state.CryptoState::mi’, which is of non-class type ‘const int’
size_t n = std::min(sizeof(iv), state.mi.size());
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:123:26: error: invalid types ‘const int[int]’ for array subscript
memcpy(&iv, &state.mi[0], n);
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:123:30: error: ‘memcpy’ was not declared in this scope
memcpy(&iv, &state.mi[0], n);
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc: In member function ‘virtual void des_ofb::set_key_map(const key_map_type&)’:
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:133:3: error: ‘m_current_kid’ was not declared in this scope
m_current_kid = -1; // To refresh on next update if it has changed
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc: In member function ‘virtual bool des_ofb::set_key(const key_type&)’:
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:140:11: error: request for member ‘size’ in ‘key’, which is of non-class type ‘const key_type {aka const int}’
if (key.size() != valid_key_length)
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:142:27: error: ‘stderr’ was not declared in this scope
if (m_verbose) fprintf(stderr, "DES:\tIncorrect key length of %lu (should be %lu)\n", key.size(), valid_key_length);
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:142:94: error: request for member ‘size’ in ‘key’, which is of non-class type ‘const key_type {aka const int}’
if (m_verbose) fprintf(stderr, "DES:\tIncorrect key length of %lu (should be %lu)\n", key.size(), valid_key_length);
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:142:118: error: ‘fprintf’ was not declared in this scope
if (m_verbose) fprintf(stderr, "DES:\tIncorrect key length of %lu (should be %lu)\n", key.size(), valid_key_length);
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:148:28: error: invalid types ‘const key_type {aka const int}[int]’ for array subscript
memcpy(&m_key_des, &key[0], std::min(key.size(), sizeof(m_key_des)));
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:148:44: error: request for member ‘size’ in ‘key’, which is of non-class type ‘const key_type {aka const int}’
memcpy(&m_key_des, &key[0], std::min(key.size(), sizeof(m_key_des)));
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:148:70: error: ‘memcpy’ was not declared in this scope
memcpy(&m_key_des, &key[0], std::min(key.size(), sizeof(m_key_des)));
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:154:45: error: invalid types ‘const key_type {aka const int}[int]’ for array subscript
ss << boost::format("%02X") % (int)key[i];
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc: In member function ‘void des_ofb::set_iv(int)’:
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:167:27: error: ‘stderr’ was not declared in this scope
if (m_verbose) fprintf(stderr, "DES:\t%i bits used from %i iterations\n", m_ks_idx, m_iterations);
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:167:100: error: ‘fprintf’ was not declared in this scope
if (m_verbose) fprintf(stderr, "DES:\t%i bits used from %i iterations\n", m_ks_idx, m_iterations);
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc: In member function ‘long long unsigned int des_ofb::generate(size_t)’:
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:188:50: error: ‘swap_bytes’ cannot be used as a function
unsigned long long ullCurrent = swap_bytes(m_ks);
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:214:31: error: ‘swap_bytes’ cannot be used as a function
ullCurrent = swap_bytes(m_ks);
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc: At global scope:
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:231:67: error: ‘crypto_algorithm::sptr crypto_module::algorithm’ is not a static member of ‘class crypto_module’
crypto_algorithm::sptr crypto_module::algorithm(crypto_algorithm::type_id algid)
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:231:49: error: ‘type_id’ is not a member of ‘crypto_algorithm’
crypto_algorithm::sptr crypto_module::algorithm(crypto_algorithm::type_id algid)
^
/home/jcardani/pybombs/src/gr-op25test/op25/op25/gr-op25/lib/crypto.cc:232:1: error: expected ‘,’ or ‘;’ before ‘{’ token
{
^
make[2]: *** [op25/gr-op25/lib/CMakeFiles/gnuradio-op25.dir/crypto.cc.o] Error 1
make[1]: *** [op25/gr-op25/lib/CMakeFiles/gnuradio-op25.dir/all] Error 2
make: *** [all] Error 2
jcardani@jcardani-ThinkCentre-XXXX ~/pybombs/src/gr-op25test/op25/build $
Reply via web post | • | Reply to sender | • | Reply to group | • | Start a New Topic | • | Messages in this topic (35) |