C++ SNMP Stack
0.10
|
SNMP 메시지 생성/파서 라이브러리 더 자세히 ...
클래스 | |
class | CAsnComplex |
ASN 복합 타입 클래스 더 자세히 ... | |
class | CAsnInt |
ASN 정수 타입 클래스 더 자세히 ... | |
class | CAsnLong |
ASN long 타입 클래스 더 자세히 ... | |
class | CAsnNull |
ASN NULL 타입 클래스 더 자세히 ... | |
class | CAsnOid |
ASN OID 타입 클래스 더 자세히 ... | |
class | CAsnString |
ASN 문자열 타입 클래스 더 자세히 ... | |
class | CAsnType |
ASN 타입 클래스의 root 클래스 더 자세히 ... | |
class | CSnmpMessage |
SNMP 패킷 생성/파서 클래스 더 자세히 ... | |
class | CSnmpOidValue |
OID 와 OID 의 값을 저장하는 클래스 더 자세히 ... | |
class | CSnmpOidValueList |
OID 와 OID 의 값들을 리스트에 저장하여서 관리하는 클래스 더 자세히 ... |
함수 | |
bool | SnmpMakeKey (const char *pszPassWord, uint8_t *pszKey) |
비밀번호로 key 를 생성한다. | |
bool | SnmpMakeAuthKey (const uint8_t *pszKey, const uint8_t *pszEngineId, int iEngineIdLen, uint8_t *pszAuthKey) |
authentication key 를 생성한다. | |
bool | SnmpMakeHmac (const char *pszPacket, int iPacketLen, const char *pszPassWord, const char *pszEngineId, int iEngineIdLen, std::string &strAuthParams) |
SNMPv3 msgAuthenticationParameters 를 계산한다. | |
bool | SnmpEncrypt (const char *pszPacket, int iPacketLen, const char *pszPassWord, const char *pszEngineId, int iEngineIdLen, const char *pszPrivParam, int iPrivParamLen, std::string &strEncrypt) |
SNMPv3 PDU 를 암호화한다. | |
bool | SnmpDecrypt (const char *pszPacket, int iPacketLen, const char *pszPassWord, const char *pszEngineId, int iEngineIdLen, const char *pszPrivParam, int iPrivParamLen, std::string &strPlain) |
SNMPv3 암호화된 PDU 를 복호화한다. | |
virtual int | CAsnComplex::ParsePacket (const char *pszPacket, int iPacketLen) |
패킷을 파싱하여서 내부 변수에 패킷 데이터를 저장한다. | |
virtual int | CAsnComplex::MakePacket (char *pszPacket, int iPacketSize) |
내부 변수를 패킷에 저장한다. | |
virtual CAsnType * | CAsnComplex::Copy () |
복사한 객체를 리턴한다. | |
bool | CAsnComplex::AddInt (uint32_t iValue) |
CAsnInt 변수를 리스트에 추가한다. | |
bool | CAsnComplex::AddString (const char *pszValue) |
CAsnString 변수를 리스트에 추가한다. | |
bool | CAsnComplex::AddString (std::string &strValue) |
CAsnString 변수를 리스트에 추가한다. | |
bool | CAsnComplex::AddString (uint8_t cValue) |
1 문자로 구성된 CAsnString 변수를 리스트에 추가한다. | |
bool | CAsnComplex::AddOid (const char *pszValue) |
CAsnOid 변수를 리스트에 추가한다. | |
bool | CAsnComplex::AddNull () |
CAsnNull 변수를 리스트에 추가한다. | |
bool | CAsnComplex::AddComplex (CAsnComplex *pclsValue) |
CAsnComplex 변수를 리스트에 추가한다. | |
bool | CAsnComplex::AddValue (CAsnType *pclsValue) |
CAsnType 변수를 리스트에 추가한다. | |
void | CAsnComplex::Clear () |
자료구조에 저장된 데이터를 삭제한다. | |
virtual int | CAsnInt::ParsePacket (const char *pszPacket, int iPacketLen) |
패킷을 파싱하여서 내부 변수에 패킷 데이터를 저장한다. | |
virtual int | CAsnInt::MakePacket (char *pszPacket, int iPacketSize) |
내부 변수를 패킷에 저장한다. | |
virtual CAsnType * | CAsnInt::Copy () |
복사한 객체를 리턴한다. | |
virtual bool | CAsnInt::GetInt (uint32_t &iValue) |
정수값을 가져온다. | |
virtual int | CAsnLong::ParsePacket (const char *pszPacket, int iPacketLen) |
패킷을 파싱하여서 내부 변수에 패킷 데이터를 저장한다. | |
virtual int | CAsnLong::MakePacket (char *pszPacket, int iPacketSize) |
내부 변수를 패킷에 저장한다. | |
virtual CAsnType * | CAsnLong::Copy () |
복사한 객체를 리턴한다. | |
virtual bool | CAsnLong::GetLong (uint64_t &iValue) |
정수값을 가져온다. | |
int | CAsnLong::ParseLong (const char *pszPacket, int iPacketLen, uint8_t cLength, uint64_t &iValue) |
패킷에서 정수를 파싱한다. | |
virtual int | CAsnNull::ParsePacket (const char *pszPacket, int iPacketLen) |
패킷을 파싱하여서 내부 변수에 패킷 데이터를 저장한다. | |
virtual int | CAsnNull::MakePacket (char *pszPacket, int iPacketSize) |
내부 변수를 패킷에 저장한다. | |
virtual CAsnType * | CAsnNull::Copy () |
복사한 객체를 리턴한다. | |
virtual int | CAsnOid::ParsePacket (const char *pszPacket, int iPacketLen) |
패킷을 파싱하여서 내부 변수에 패킷 데이터를 저장한다. | |
virtual int | CAsnOid::MakePacket (char *pszPacket, int iPacketSize) |
내부 변수를 패킷에 저장한다. | |
virtual CAsnType * | CAsnOid::Copy () |
복사한 객체를 리턴한다. | |
virtual bool | CAsnOid::GetString (std::string &strValue) |
OID 문자열을 가져온다. | |
virtual int | CAsnString::ParsePacket (const char *pszPacket, int iPacketLen) |
패킷을 파싱하여서 내부 변수에 패킷 데이터를 저장한다. | |
virtual int | CAsnString::MakePacket (char *pszPacket, int iPacketSize) |
내부 변수를 패킷에 저장한다. | |
virtual CAsnType * | CAsnString::Copy () |
복사한 객체를 리턴한다. | |
virtual bool | CAsnString::GetString (std::string &strValue) |
문자열을 가져온다. | |
virtual bool | CAsnType::GetInt (uint32_t &iValue) |
ASN 변수에 정수가 저장되어 있으면 정수값을 가져온다. | |
virtual bool | CAsnType::GetLong (uint64_t &iValue) |
ASN 변수에 정수가 저장되어 있으면 정수값을 가져온다. | |
virtual bool | CAsnType::GetString (std::string &strValue) |
ASN 변수에 문자열이 저장되어 있으면 문자열을 가져온다. | |
int | CAsnType::ParseHeader (const char *pszPacket, int iPacketLen) |
패킷을 파싱하여서 ASN.1 타입 및 body 길이를 저장한다. | |
int | CAsnType::SetHeaderLength (char *pszPacket, int iPacketSize, int iLength) |
패킷에 body 길이를 저장한다. | |
static int | CAsnType::ParseInt (const char *pszPacket, int iPacketLen, uint8_t cLength, uint32_t &iValue) |
패킷에서 정수를 파싱한다. | |
static int | CAsnType::SetInt (uint8_t *pszPacket, int iPacketLen, uint32_t iValue) |
ASN.1 header 의 body 길이를 저장한다. | |
void | CSnmpMessage::Clear () |
내부 변수를 초기화시킨다. | |
bool | CSnmpMessage::MakeGetRequest (const char *pszCommunity, uint32_t iRequestId, const char *pszOid) |
SNMPv2 GET 요청 메시지를 생성한다. | |
bool | CSnmpMessage::MakeGetNextRequest (const char *pszCommunity, uint32_t iRequestId, const char *pszOid) |
SNMPv2 GET NEXT 요청 메시지를 생성한다. | |
bool | CSnmpMessage::MakeTrapRequest (const char *pszTrapOid) |
SNMPv2 TRAP 메시지를 생성한다. | |
bool | CSnmpMessage::MakeGetRequest (const char *pszUserName, const char *pszAuthPassWord, const char *pszPrivPassWord, uint32_t iRequestId, const char *pszOid) |
SNMPv3 GET 요청 메시지를 생성한다. | |
bool | CSnmpMessage::MakeGetNextRequest (const char *pszUserName, const char *pszAuthPassWord, const char *pszPrivPassWord, uint32_t iRequestId, const char *pszOid) |
SNMPv3 GET 요청 메시지를 생성한다. | |
const char * | CSnmpMessage::GetOid () |
첫번째 OID 를 가져온다. | |
bool | CSnmpMessage::AddOidValue (const char *pszOid, CAsnType *pclsValue) |
OID 와 OID 의 값을 저장한다. | |
bool | CSnmpMessage::AddOidValue (const char *pszOid, uint32_t iValue) |
OID 와 정수를 저장한다. | |
bool | CSnmpMessage::AddOidValue (const char *pszOid, int32_t iValue) |
OID 와 정수를 저장한다. | |
bool | CSnmpMessage::AddOidValue (const char *pszOid, time_t iValue) |
OID 와 시간을 저장한다. | |
bool | CSnmpMessage::AddOidValue (const char *pszOid, const char *pszValue) |
OID 와 문자열을 저장한다. | |
bool | CSnmpMessage::AddOidValueOid (const char *pszOid, const char *pszValue) |
OID 와 OID 를 저장한다. | |
bool | CSnmpMessage::AddOidValueCounter (const char *pszOid, uint32_t iValue) |
OID 와 카운트를 저장한다. | |
bool | CSnmpMessage::AddOidValueIpAddress (const char *pszOid, const char *pszIp) |
OID 와 IP 주소를 저장한다. | |
CSnmpMessage * | CSnmpMessage::CreateResponse () |
SNMP 응답 메시지를 생성한다. | |
static CSnmpMessage * | CSnmpMessage::Create (CSnmpMessage *pclsMessage) |
SNMP 메시지를 생성한 후, 입력된 SNMP 메시지를 복사한다. | |
int | CSnmpMessage::MakePacket (char *pszPacket, int iPacketSize) |
내부 변수를 패킷에 저장한다. | |
bool | CSnmpMessage::MakePacket () |
패킷을 생성하여서 내부 변수에 저장한다. | |
int | CSnmpMessage::ParsePacket (const char *pszPacket, int iPacketLen) |
패킷을 파싱하여서 내부 변수에 패킷 데이터를 저장한다. | |
int | CSnmpMessage::GetPacketLen (const char *pszPacket, int iPacketLen) |
수신해야 하는 패킷 길이를 리턴한다. | |
bool | CSnmpMessage::SetPrivParams () |
msgPrivacyParameters 값을 설정하고 PDU 를 암호화한다. | |
bool | CSnmpMessage::SetAuthParams () |
msgAuthenticationParameters 값을 계산한다. | |
bool | CSnmpMessage::ParseEncryptedPdu () |
암호화된 PDU 를 복호화하여서 내부 변수에 저장한다. | |
bool | CSnmpMessage::CheckAuth () |
인증 정보가 유효한지 검사한다. | |
void | CSnmpOidValue::Clear () |
내부 변수를 초기화 시킨다. | |
CSnmpOidValue * | CSnmpOidValue::Copy () |
자신의 내부 변수의 값과 동일한 객체를 복사하여서 리턴한다. | |
bool | CSnmpOidValueList::Add (const char *pszOid, CAsnType *pclsValue) |
OID 와 OID 의 값을 저장한다. | |
void | CSnmpOidValueList::Clear () |
내부 변수를 초기화 시킨다. | |
CSnmpOidValue * | CSnmpOidValueList::GetFirst () |
리스트의 첫번째 OID 와 OID 값을 저장한 객체를 가져온다. | |
CSnmpOidValueList * | CSnmpOidValueList::Copy () |
자신의 내부 변수의 값과 동일한 객체를 복사하여서 리턴한다. | |
CAsnComplex * | CSnmpOidValueList::GetComplex () |
OID 와 OID 의 값을 CAsnComplex 에 저장하여서 리턴한다. |
SNMP 메시지 생성/파서 라이브러리
bool CSnmpOidValueList::Add | ( | const char * | pszOid, |
CAsnType * | pclsValue | ||
) |
OID 와 OID 의 값을 저장한다.
pszOid | OID |
pclsValue | OID 의 값 |
bool CAsnComplex::AddComplex | ( | CAsnComplex * | pclsValue | ) |
bool CAsnComplex::AddInt | ( | uint32_t | iValue | ) |
bool CAsnComplex::AddNull | ( | ) |
CAsnNull 변수를 리스트에 추가한다.
bool CAsnComplex::AddOid | ( | const char * | pszValue | ) |
bool CSnmpMessage::AddOidValue | ( | const char * | pszOid, |
CAsnType * | pclsValue | ||
) |
OID 와 OID 의 값을 저장한다.
pszOid | OID |
pclsValue | OID 의 값 |
bool CSnmpMessage::AddOidValue | ( | const char * | pszOid, |
int32_t | iValue | ||
) |
OID 와 정수를 저장한다.
pszOid | OID |
iValue | 정수 ( OID 의 값 ) |
bool CSnmpMessage::AddOidValue | ( | const char * | pszOid, |
uint32_t | iValue | ||
) |
OID 와 정수를 저장한다.
pszOid | OID |
iValue | 정수 ( OID 의 값 ) |
bool CSnmpMessage::AddOidValue | ( | const char * | pszOid, |
time_t | iValue | ||
) |
OID 와 시간을 저장한다.
pszOid | OID |
iValue | 시간 ( OID 의 값 ) |
bool CSnmpMessage::AddOidValue | ( | const char * | pszOid, |
const char * | pszValue | ||
) |
OID 와 문자열을 저장한다.
pszOid | OID |
pszValue | 문자열 ( OID 의 값 ) |
bool CSnmpMessage::AddOidValueCounter | ( | const char * | pszOid, |
uint32_t | iValue | ||
) |
OID 와 카운트를 저장한다.
pszOid | OID |
iValue | 정수 ( OID 의 값 ) |
bool CSnmpMessage::AddOidValueIpAddress | ( | const char * | pszOid, |
const char * | pszIp | ||
) |
OID 와 IP 주소를 저장한다.
pszOid | OID |
pszIp | IPv4 IP 주소 |
bool CSnmpMessage::AddOidValueOid | ( | const char * | pszOid, |
const char * | pszValue | ||
) |
OID 와 OID 를 저장한다.
pszOid | OID |
pszValue | OID ( OID 의 값 ) |
bool CAsnComplex::AddString | ( | const char * | pszValue | ) |
bool CAsnComplex::AddString | ( | std::string & | strValue | ) |
bool CAsnComplex::AddString | ( | uint8_t | cValue | ) |
bool CAsnComplex::AddValue | ( | CAsnType * | pclsValue | ) |
bool CSnmpMessage::CheckAuth | ( | ) |
인증 정보가 유효한지 검사한다.
void CSnmpOidValue::Clear | ( | ) |
내부 변수를 초기화 시킨다.
void CSnmpMessage::Clear | ( | ) |
내부 변수를 초기화시킨다.
void CAsnComplex::Clear | ( | ) |
자료구조에 저장된 데이터를 삭제한다.
void CSnmpOidValueList::Clear | ( | ) |
내부 변수를 초기화 시킨다.
CSnmpOidValue * CSnmpOidValue::Copy | ( | ) |
자신의 내부 변수의 값과 동일한 객체를 복사하여서 리턴한다.
CSnmpOidValueList * CSnmpOidValueList::Copy | ( | ) |
자신의 내부 변수의 값과 동일한 객체를 복사하여서 리턴한다.
|
static |
SNMP 메시지를 생성한 후, 입력된 SNMP 메시지를 복사한다.
pclsMessage | SNMP 메시지 |
CSnmpMessage * CSnmpMessage::CreateResponse | ( | ) |
SNMP 응답 메시지를 생성한다.
CAsnComplex * CSnmpOidValueList::GetComplex | ( | ) |
OID 와 OID 의 값을 CAsnComplex 에 저장하여서 리턴한다.
CSnmpOidValue * CSnmpOidValueList::GetFirst | ( | ) |
리스트의 첫번째 OID 와 OID 값을 저장한 객체를 가져온다.
|
virtual |
|
virtual |
ASN 변수에 정수가 저장되어 있으면 정수값을 가져온다.
iValue | 정수를 저장할 변수 |
CAsnInt에서 재구현되었습니다.
|
virtual |
|
virtual |
ASN 변수에 정수가 저장되어 있으면 정수값을 가져온다.
iValue | 정수를 저장할 변수 |
CAsnLong에서 재구현되었습니다.
const char * CSnmpMessage::GetOid | ( | ) |
첫번째 OID 를 가져온다.
int CSnmpMessage::GetPacketLen | ( | const char * | pszPacket, |
int | iPacketLen | ||
) |
수신해야 하는 패킷 길이를 리턴한다.
pszPacket | 패킷 |
iPacketLen | 패킷 길이 |
|
virtual |
OID 문자열을 가져온다.
strValue | OID 문자열을 저장할 변수 |
CAsnType(으)로부터 재구현되었습니다.
|
virtual |
|
virtual |
ASN 변수에 문자열이 저장되어 있으면 문자열을 가져온다.
strValue | 문자열을 저장할 변수 |
CAsnString, CAsnOid에서 재구현되었습니다.
bool CSnmpMessage::MakeGetNextRequest | ( | const char * | pszCommunity, |
uint32_t | iRequestId, | ||
const char * | pszOid | ||
) |
SNMPv2 GET NEXT 요청 메시지를 생성한다.
pszCommunity | community 문자열 |
iRequestId | 요청 아이디 |
pszOid | OID 문자열 |
bool CSnmpMessage::MakeGetNextRequest | ( | const char * | pszUserName, |
const char * | pszAuthPassWord, | ||
const char * | pszPrivPassWord, | ||
uint32_t | iRequestId, | ||
const char * | pszOid | ||
) |
SNMPv3 GET 요청 메시지를 생성한다.
pszUserName | 사용자 아이디 |
pszAuthPassWord | msgAuthenticationParameters 생성을 위한 비밀번호 |
pszPrivPassWord | msgPrivacyParameters 생성을 위한 비밀번호 |
iRequestId | 요청 아이디 |
pszOid | OID 문자열 |
bool CSnmpMessage::MakeGetRequest | ( | const char * | pszCommunity, |
uint32_t | iRequestId, | ||
const char * | pszOid | ||
) |
SNMPv2 GET 요청 메시지를 생성한다.
pszCommunity | community 문자열 |
iRequestId | 요청 아이디 |
pszOid | OID 문자열 |
bool CSnmpMessage::MakeGetRequest | ( | const char * | pszUserName, |
const char * | pszAuthPassWord, | ||
const char * | pszPrivPassWord, | ||
uint32_t | iRequestId, | ||
const char * | pszOid | ||
) |
SNMPv3 GET 요청 메시지를 생성한다.
pszUserName | 사용자 아이디 |
pszAuthPassWord | msgAuthenticationParameters 생성을 위한 비밀번호 |
pszPrivPassWord | msgPrivacyParameters 생성을 위한 비밀번호 |
iRequestId | 요청 아이디 |
pszOid | OID 문자열 |
|
virtual |
내부 변수를 패킷에 저장한다.
pszPacket | 패킷 |
iPacketSize | 패킷 크기 |
CAsnType를 구현.
|
virtual |
내부 변수를 패킷에 저장한다.
pszPacket | 패킷 |
iPacketSize | 패킷 크기 |
CAsnType를 구현.
|
virtual |
내부 변수를 패킷에 저장한다.
pszPacket | 패킷 |
iPacketSize | 패킷 크기 |
CAsnType를 구현.
|
virtual |
내부 변수를 패킷에 저장한다.
pszPacket | 패킷 |
iPacketSize | 패킷 크기 |
CAsnType를 구현.
|
virtual |
내부 변수를 패킷에 저장한다.
pszPacket | 패킷 |
iPacketSize | 패킷 크기 |
CAsnType를 구현.
|
virtual |
내부 변수를 패킷에 저장한다.
pszPacket | 패킷 |
iPacketSize | 패킷 크기 |
CAsnType를 구현.
int CSnmpMessage::MakePacket | ( | char * | pszPacket, |
int | iPacketSize | ||
) |
내부 변수를 패킷에 저장한다.
pszPacket | 패킷 |
iPacketSize | 패킷 크기 |
bool CSnmpMessage::MakePacket | ( | ) |
패킷을 생성하여서 내부 변수에 저장한다.
bool CSnmpMessage::MakeTrapRequest | ( | const char * | pszTrapOid | ) |
SNMPv2 TRAP 메시지를 생성한다.
본 메소드를 호출한 후, AddOidValue 메소드를 호출하여서 TRAP 으로 전송할 OID 와 OID 의 값을 저장해야 한다.
pszTrapOid | TRAP OID 문자열 |
bool CSnmpMessage::ParseEncryptedPdu | ( | ) |
암호화된 PDU 를 복호화하여서 내부 변수에 저장한다.
int CAsnType::ParseHeader | ( | const char * | pszPacket, |
int | iPacketLen | ||
) |
패킷을 파싱하여서 ASN.1 타입 및 body 길이를 저장한다.
pszPacket | 패킷 |
iPacketLen | 패킷 길이 |
|
static |
패킷에서 정수를 파싱한다.
pszPacket | 패킷 |
iPacketLen | 패킷 길이 |
cLength | 패킷에 저장된 정수의 길이 |
iValue | 정수값 저장 변수 |
int CAsnLong::ParseLong | ( | const char * | pszPacket, |
int | iPacketLen, | ||
uint8_t | cLength, | ||
uint64_t & | iValue | ||
) |
패킷에서 정수를 파싱한다.
pszPacket | 패킷 |
iPacketLen | 패킷 길이 |
cLength | 패킷에 저장된 정수의 길이 |
iValue | 정수값 저장 변수 |
|
virtual |
패킷을 파싱하여서 내부 변수에 패킷 데이터를 저장한다.
pszPacket | 패킷 |
iPacketLen | 패킷 길이 |
CAsnType를 구현.
|
virtual |
패킷을 파싱하여서 내부 변수에 패킷 데이터를 저장한다.
pszPacket | 패킷 |
iPacketLen | 패킷 길이 |
CAsnType를 구현.
|
virtual |
패킷을 파싱하여서 내부 변수에 패킷 데이터를 저장한다.
pszPacket | 패킷 |
iPacketLen | 패킷 길이 |
CAsnType를 구현.
|
virtual |
패킷을 파싱하여서 내부 변수에 패킷 데이터를 저장한다.
pszPacket | 패킷 |
iPacketLen | 패킷 길이 |
CAsnType를 구현.
|
virtual |
패킷을 파싱하여서 내부 변수에 패킷 데이터를 저장한다.
pszPacket | 패킷 |
iPacketLen | 패킷 길이 |
CAsnType를 구현.
|
virtual |
패킷을 파싱하여서 내부 변수에 패킷 데이터를 저장한다.
pszPacket | 패킷 |
iPacketLen | 패킷 길이 |
CAsnType를 구현.
int CSnmpMessage::ParsePacket | ( | const char * | pszPacket, |
int | iPacketLen | ||
) |
패킷을 파싱하여서 내부 변수에 패킷 데이터를 저장한다.
pszPacket | 패킷 |
iPacketLen | 패킷 길이 |
bool CSnmpMessage::SetAuthParams | ( | ) |
msgAuthenticationParameters 값을 계산한다.
int CAsnType::SetHeaderLength | ( | char * | pszPacket, |
int | iPacketSize, | ||
int | iLength | ||
) |
패킷에 body 길이를 저장한다.
body 길이가 127 보다 크다면 패킷을 body 길이를 저장할 만큼 뒤로 복사한다.
pszPacket | 패킷의 body 길이 저장 위치 |
iPacketSize | 패킷 크기 |
iLength | body 길이 |
|
static |
ASN.1 header 의 body 길이를 저장한다.
pszPacket | 패킷의 body 길이 위치 |
iPacketLen | 패킷의 길이 |
iValue | body 길이 |
bool CSnmpMessage::SetPrivParams | ( | ) |
msgPrivacyParameters 값을 설정하고 PDU 를 암호화한다.
bool SnmpDecrypt | ( | const char * | pszPacket, |
int | iPacketLen, | ||
const char * | pszPassWord, | ||
const char * | pszEngineId, | ||
int | iEngineIdLen, | ||
const char * | pszPrivParam, | ||
int | iPrivParamLen, | ||
std::string & | strPlain | ||
) |
SNMPv3 암호화된 PDU 를 복호화한다.
pszPacket | 암호화된 PDU |
iPacketLen | 암호화된 PDU 길이 |
pszPassWord | private 비밀번호 |
pszEngineId | SNMPv3 engine ID |
iEngineIdLen | SNMPv3 engine ID 길이 |
pszPrivParam | msgPrivacyParameter |
iPrivParamLen | msgPrivacyParameter 길이 |
strPlain | 평문 PDU 저장 변수 |
bool SnmpEncrypt | ( | const char * | pszPacket, |
int | iPacketLen, | ||
const char * | pszPassWord, | ||
const char * | pszEngineId, | ||
int | iEngineIdLen, | ||
const char * | pszPrivParam, | ||
int | iPrivParamLen, | ||
std::string & | strEncrypt | ||
) |
SNMPv3 PDU 를 암호화한다.
pszPacket | 평문 PDU 패킷 |
iPacketLen | 평문 PDU 패킷 길이 |
pszPassWord | private 비밀번호 |
pszEngineId | SNMPv3 engine ID |
iEngineIdLen | SNMPv3 engine ID 길이 |
pszPrivParam | msgPrivacyParameter |
iPrivParamLen | msgPrivacyParameter 길이 |
strEncrypt | 암화화된 PDU 저장 변수 |
bool SnmpMakeAuthKey | ( | const uint8_t * | pszKey, |
const uint8_t * | pszEngineId, | ||
int | iEngineIdLen, | ||
uint8_t * | pszAuthKey | ||
) |
authentication key 를 생성한다.
pszKey | key |
pszEngineId | SNMPv3 engine ID |
iEngineIdLen | SNMPv3 engine ID 길이 |
pszAuthKey | authentication key 저장 변수 |
bool SnmpMakeHmac | ( | const char * | pszPacket, |
int | iPacketLen, | ||
const char * | pszPassWord, | ||
const char * | pszEngineId, | ||
int | iEngineIdLen, | ||
std::string & | strAuthParams | ||
) |
SNMPv3 msgAuthenticationParameters 를 계산한다.
pszPacket | 패킷 |
iPacketLen | 패킷 길이 |
pszPassWord | 비밀번호 |
pszEngineId | SNMPv3 engine ID |
iEngineIdLen | SNMPv3 engine ID 길이 |
strAuthParams | SNMPv3 msgAuthenticationParameters 저장 변수 |
bool SnmpMakeKey | ( | const char * | pszPassWord, |
uint8_t * | pszKey | ||
) |
비밀번호로 key 를 생성한다.
pszPassWord | 비밀번호 |
pszKey | 생성된 key 저장 변수 |