nl:: การสาน
สรุป
ประเภทคําจํากัดความ |
|
---|---|
FabricSecretRotationScheme
|
Typedefuint8_t
|
FabricSecretScope
|
nl::Weave::FabricSecretScopeuint8_t
ระบุหมวดหมู่ของอุปกรณ์ที่ครอบครองและใช้ข้อมูลลับในผ้าได้ |
WeaveAuthMode
|
Typedefuint16_t
ระบุวิธีตรวจสอบสิทธิ์โหนดเพียร์ |
WeaveEncryptionKey
|
Typedef |
WeaveEncryptionType
|
Typedefenum nl::Weave::WeaveEncryptionType
ประเภทการเข้ารหัสสําหรับข้อความ Weave |
WeaveExchangeFlags
|
Typedefenum nl::Weave::WeaveExchangeFlags
บิตแฟล็กส่วนหัวของ Weave Exchange |
WeaveExchangeVersion
|
Typedefenum nl::Weave::WeaveExchangeVersion
เวอร์ชันส่วนหัวของ Weave Exchange |
WeaveMessageFlags
|
Typedefenum nl::Weave::WeaveMessageFlags
แฟล็กที่เชื่อมโยงกับข้อความ Weave ขาเข้าหรือขาออก |
WeaveMessageHeader
|
Typedefstruct WeaveMessageInfo
|
WeaveMessageVersion
|
Typedefenum nl::Weave::WeaveMessageVersion
เวอร์ชันของรูปแบบข้อความ Weave |
WeaveSubnetId
|
Typedefenum nl::Weave::WeaveSubnetId
Weave มีหมายเลขซับเน็ตที่สงวนไว้สําหรับอินเทอร์เฟซเครือข่ายที่แตกต่างกันในอุปกรณ์ทั่วไป |
ตัวแปร |
|
---|---|
ExchangeMgr
|
NL_DLL_EXPORT WeaveExchangeManager
|
FabricState
|
NL_DLL_EXPORT WeaveFabricState
|
MessageLayer
|
NL_DLL_EXPORT WeaveMessageLayer
|
SecurityMgr
|
NL_DLL_EXPORT WeaveSecurityManager
|
WeaveConnection
|
class NL_DLL_EXPORT
|
WeaveExchangeManager
|
class NL_DLL_EXPORT
|
WeaveMessageLayer
|
class NL_DLL_EXPORT
|
gDefaultWRMPConfig = { WEAVE_CONFIG_WRMP_DEFAULT_INITIAL_RETRANS_TIMEOUT,
WEAVE_CONFIG_WRMP_DEFAULT_ACTIVE_RETRANS_TIMEOUT,
WEAVE_CONFIG_WRMP_DEFAULT_ACK_TIMEOUT,
WEAVE_CONFIG_WRMP_DEFAULT_MAX_RETRANS }
|
const WRMPConfig
|
kWeaveMsgEncAppKeyDiversifier = { 0xB1, 0x1D, 0xAE, 0x5B }[]
|
const uint8_t
เครื่องมือเปลี่ยนคีย์ที่ใช้กับอนุพันธ์คีย์การเข้ารหัสข้อความ Weave
|
ฟังก์ชัน |
|
---|---|
AppGroupMasterKeyIdFromAuthMode(WeaveAuthMode authMode)
|
uint8_t
แสดงผลรหัสคีย์หลักของกลุ่มแอปพลิเคชันที่เชื่อมโยงกับโหมดการตรวจสอบสิทธิ์
|
CASEAuthMode(uint8_t certType)
|
WeaveAuthMode
แสดงผลโหมดการตรวจสอบสิทธิ์ CASE ที่เกี่ยวข้องสําหรับประเภทใบรับรองที่ระบุ
|
CertTypeFromAuthMode(WeaveAuthMode authMode)
|
uint8_t
แสดงแหล่งที่มาของรหัสผ่านสําหรับโหมดการตรวจสอบสิทธิ์ที่ระบุ
|
DecodeHeaderField(const uint16_t headerField, WeaveMessageInfo *msgInfo)
|
void
|
DefaultOnMessageReceived(ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload)
|
void
|
EncodeHeaderField(const WeaveMessageInfo *msgInfo)
|
uint16_t
|
FindMessageName(uint32_t inProfileId, uint8_t inMsgType)
|
const char *
|
FindProfileName(uint32_t inProfileId)
|
const char *
|
FormatWeaveError(char *buf, uint16_t bufSize, int32_t err)
|
bool
หากมีข้อผิดพลาด Weave ให้แสดงสตริง C ที่สิ้นสุดโดย NULL ที่มนุษย์อ่านได้และอธิบายข้อผิดพลาดดังกล่าว
|
GenerateWeaveNodeId(uint64_t & nodeId)
|
NL_DLL_EXPORT WEAVE_ERROR
สร้างรหัสโหนด Weave แบบสุ่ม
|
GetFibonacciForIndex(uint32_t index)
|
uint32_t
ฟังก์ชันนี้สร้างหมายเลข Fibonacci แบบ 32 บิตสําหรับดัชนี 32 บิตที่ระบุ
|
GetMessageName(uint32_t profileId, uint8_t msgType)
|
const char *
|
GetProfileName(uint32_t profileId)
|
const char *
|
GetRandU16(void)
|
uint16_t
ฟังก์ชันนี้จะสร้างหมายเลขสุ่มที่ไม่มีเครื่องหมาย 16 บิต
|
GetRandU32(void)
|
uint32_t
ฟังก์ชันนี้จะสร้างหมายเลขสุ่มที่ไม่มีเครื่องหมาย 32 บิต
|
GetRandU64(void)
|
uint64_t
ฟังก์ชันนี้จะสร้างหมายเลขสุ่มที่ไม่มีเครื่องหมาย 64 บิต
|
GetRandU8(void)
|
uint8_t
ฟังก์ชันนี้จะสร้างหมายเลขสุ่มแบบ 8 บิตที่ไม่มีการรับรอง
|
GetVendorName(uint16_t vendorId)
|
const char *
|
GroupKeyAuthMode(uint32_t keyId)
|
WeaveAuthMode
แสดงผลโหมดการตรวจสอบสิทธิ์คีย์กลุ่มที่เกี่ยวข้องสําหรับรหัสคีย์ที่ระบุ
|
IPv6InterfaceIdToWeaveNodeId(uint64_t interfaceId)
|
uint64_t
แปลงตัวระบุอินเทอร์เฟซที่อยู่ IPv6 เป็นตัวระบุโหนด Weave
|
IsCASEAuthMode(WeaveAuthMode authMode)
|
bool
เป็นจริงหากโหมดการตรวจสอบสิทธิ์อิงตามโปรโตคอล Weave CASE
|
IsCertAuthMode(WeaveAuthMode authMode)
|
bool
เป็นจริงหากโหมดการตรวจสอบสิทธิ์อิงตามการมีคีย์ส่วนตัวที่เชื่อมโยงกับใบรับรอง
|
IsGroupKeyAuthMode(WeaveAuthMode authMode)
|
bool
เป็นจริงหากโหมดการตรวจสอบสิทธิ์อิงตามการเป็นเจ้าของคีย์กลุ่มที่แชร์
|
IsPASEAuthMode(WeaveAuthMode authMode)
|
bool
เป็นจริงหากโหมดการตรวจสอบสิทธิ์อิงตามโปรโตคอล Weave PASE
|
IsPasswordAuthMode(WeaveAuthMode authMode)
|
bool
เป็นจริงหากโหมดการตรวจสอบสิทธิ์เป็นเจ้าของรหัสผ่านที่แชร์
|
IsTAKEAuthMode(WeaveAuthMode authMode)
|
bool
เป็นจริงหากโหมดการตรวจสอบสิทธิ์อิงตามโปรโตคอล Weave TAKE
|
IsWRMPControlMessage(uint32_t profileId, uint8_t msgType)
|
bool
|
J2N_ByteArray(JNIEnv *env, jbyteArray inArray, uint8_t *& outArray, uint32_t & outArrayLen)
|
|
J2N_ByteArrayFieldVal(JNIEnv *env, jobject obj, const char *fieldName, uint8_t *& outArray, uint32_t & outArrayLen)
|
|
J2N_ByteArrayInPlace(JNIEnv *env, jbyteArray inArray, uint8_t *outArray, uint32_t maxArrayLen)
|
|
J2N_EnumFieldVal(JNIEnv *env, jobject obj, const char *fieldName, const char *fieldType, int & outVal)
|
|
J2N_EnumVal(JNIEnv *env, jobject enumObj, int & outVal)
|
|
J2N_IntFieldVal(JNIEnv *env, jobject obj, const char *fieldName, jint & outVal)
|
|
J2N_LongFieldVal(JNIEnv *env, jobject obj, const char *fieldName, jlong & outVal)
|
|
J2N_ShortFieldVal(JNIEnv *env, jobject obj, const char *fieldName, jshort & outVal)
|
|
J2N_StringFieldVal(JNIEnv *env, jobject obj, const char *fieldName, char *& outVal)
|
|
MakeClassName(const char *basePackageName, const char *relativeClassName, char *& classNameBuf)
|
|
PASEAuthMode(uint8_t pwSource)
|
WeaveAuthMode
แสดงผลโหมดการตรวจสอบสิทธิ์ PASE ที่เกี่ยวข้องสําหรับแหล่งที่มาของรหัสผ่านที่ระบุ
|
PasswordSourceFromAuthMode(WeaveAuthMode authMode)
|
uint8_t
แสดงแหล่งที่มาของรหัสผ่านสําหรับโหมดการตรวจสอบสิทธิ์ที่ระบุ
|
PrintTunnelInfo(const WeaveConnectionTunnel & tun, const TCPEndPoint & fromEndPoint, const TCPEndPoint & toEndPoint, const PacketBuffer & data)
|
void
|
ToHex(const uint8_t data)
|
char
|
ToHexString(const uint8_t *data, size_t dataLen, char *& outBuf, size_t & outBufSize)
|
void
|
WeaveEncryptionKeyToString(uint8_t encType, const WeaveEncryptionKey & key, char *buf, size_t bufSize)
|
void
|
WeaveFabricIdToIPv6GlobalId(uint64_t fabricId)
|
uint64_t
แปลงตัวระบุผ้า Weave เป็นตัวระบุ IPv6 ULA ทั่วโลก
|
WeaveMessageSourceToStr(char *buf, uint32_t bufSize, const WeaveMessageInfo *msgInfo)
|
void
โปรดใช้ WeaveMessageLayer::GetPeerDescription() แทน
|
WeaveNodeAddrToStr(char *buf, uint32_t bufSize, uint64_t nodeId, const IPAddress *addr, uint16_t port, WeaveConnection *con)
|
void
โปรดใช้ WeaveMessageLayer::GetPeerDescription() แทน
|
WeaveNodeIdToIPv6InterfaceId(uint64_t nodeId)
|
uint64_t
แปลงตัวระบุโหนด Weave เป็นตัวระบุอินเทอร์เฟซที่อยู่ IPv6
|
max(const _T & a, const _T & b)
|
const _T &
|
min(const _T & a, const _T & b)
|
const _T &
|
ชั้นเรียน |
|
---|---|
nl:: |
บันทึกเป้าหมายที่ต้องการของการสื่อสาร Weave และข้อมูลการกําหนดค่าที่เกี่ยวข้อง |
nl:: |
อินเทอร์เฟซสําหรับจัดการตัวนับเป็นค่าจํานวนเต็ม |
nl:: |
ชั้นเรียนนี้แสดงถึงการสนทนาที่ดําเนินอยู่ (ExchangeContext) ระหว่างโหนด 2 โหนดขึ้นไป |
nl:: |
ชั้นเรียนที่ให้สิทธิ์แบบนามธรรมนี้จะสื่อสารการเปลี่ยนแปลงสถานะผ้า |
nl:: |
สําหรับการจัดการและแทรกแซงรายการโฮสต์ของโฮสต์ คอลเล็กชันของโฮสต์และตัวระบุพอร์ตขนาดกะทัดรัดที่เข้ารหัสแบบไบนารีซึ่งเชื่อมโยงกับ Weave Service Directory |
nl:: |
|
nl:: |
คลาสสําหรับจัดการตัวนับการเพิ่มแบบโมโนติกเป็นค่าจํานวนเต็ม |
nl:: |
คลาสสําหรับจัดการตัวนับเป็นค่าจํานวนเต็มที่ตั้งใจจะคงอยู่ในการรีบูต |
nl:: |
คําจํากัดความของคลาส Weave Connection |
nl:: |
คําจํากัดความของคลาส WeaveConnectionTunnel ซึ่งจัดการ TCP-Point-1 คู่ที่มี WeaveConnections เดิมอยู่ และระหว่าง WeaveMessageLayer จะส่งต่อข้อมูลและการเชื่อมต่อทั้งหมด |
nl:: |
|
nl:: |
การดําเนินการนี้จะระบุโปรไฟล์ Weave และประเภทข้อความของข้อความ Weave ภายใน ExchangeContext |
nl:: |
คลาสนี้ใช้เพื่อจัดการ ExchangeContexts ด้วยโหนด Weave อื่นๆ |
nl:: |
การประกาศ WeaveFabricState การส่งต่อ |
nl:: |
คําจํากัดความของตัวระบุคีย์ Weave |
nl:: |
คําจํากัดความของคลาส WeaveMessageLayer ซึ่งจัดการการสื่อสารกับโหนดอื่นๆ ของ Weave |
nl:: |
มีข้อมูลเกี่ยวกับคีย์การเข้ารหัสข้อความ Weave |
nl:: |
แคชคีย์สําหรับคีย์การเข้ารหัสข้อความ Weave |
nl:: |
|
nl:: |
ออบเจ็กต์ฐานทั่วไปสําหรับการใช้ผู้ตอบกลับโปรไฟล์ (เซิร์ฟเวอร์) ที่ไม่พึงประสงค์ของ Weave ซึ่งครอบคลุมการตรวจสอบคําขอที่ตรวจสอบสิทธิ์แล้วและการรายงานสถานะ และให้พื้นที่เก็บข้อมูลสมาชิกแบบทั่วไปสําหรับสถานะผ้าและผู้จัดการ Exchange |
nl:: |
คลาสพื้นฐานทั่วไปสําหรับการใช้ออบเจ็กต์ที่มอบสิทธิ์เซิร์ฟเวอร์ Weave |
nl:: |
มีข้อมูลเกี่ยวกับคีย์เซสชัน Weave |
nl:: |
ถ่ายทอดสถานะการสื่อสารที่จําเป็นในการส่ง/รับข้อความด้วยโหนดอื่น |
โครงสร้าง |
|
---|---|
nl:: |
|
nl:: |
การกําหนดค่า WRMP |
nl:: |
ข้อมูลเกี่ยวกับข้อความ Weave ที่อยู่ระหว่างการส่งหรือรับ |
สหภาพ |
|
---|---|
nl:: |
เนมสเปซ |
|
---|---|
nl:: |
เนมสเปซนี้ประกอบด้วยอินเทอร์เฟซทั้งหมดภายใน Weave สําหรับทํางานกับ Abstract ไวยากรณ์ Notation One (ASN.1) |
nl:: |
เนมสเปซนี้รวมอินเทอร์เฟซทั้งหมดภายใน Weave สําหรับการรองรับการเข้ารหัสลับที่แชร์ |
nl:: |
|
nl:: |
|
nl:: |
เนมสเปซนี้มีฟังก์ชันดังต่อไปนี้ |
nl:: |
เนมสเปซนี้ประกอบด้วยอินเทอร์เฟซทั้งหมดภายใน Weave สําหรับการสนับสนุนการบันทึกที่ใช้ร่วมกัน |
nl:: |
|
nl:: |
เนมสเปซนี้ประกอบด้วยอินเทอร์เฟซทั้งหมดภายใน Weave สําหรับโปรไฟล์ Weave ทั้งสําหรับผู้ให้บริการทั่วไป เฉพาะและ Nest Labs |
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
คํานิยามสําหรับการทํางานกับข้อมูลที่เข้ารหัสในรูปแบบ Weave TLV |
nl:: |
เนมสเปซนี้ประกอบด้วยอินเทอร์เฟซสําหรับที่อยู่ Weave และ Routing Module ซึ่งเป็นโมดูลแบบพกพาสําหรับการกําหนดค่าที่อยู่ IP และเส้นทางของ Weave |
การแจกแจง
21 ขวบ
@21
พร็อพเพอร์ตี้ | |
---|---|
kFlagAckPending
|
หากคาดว่าจะได้รับการตอบกลับสําหรับข้อความที่กําลังส่ง |
kFlagAutoReleaseConnection
|
ปล่อยคีย์การเข้ารหัสข้อความโดยอัตโนมัติเมื่อพ้นบริบทของ Exchange |
kFlagAutoReleaseKey
|
เมื่อตั้งค่าแล้ว แสดงว่าได้รับข้อความอย่างน้อย 1 ข้อความจากเพื่อนในบริบทของ Exchange นี้ |
kFlagAutoRequestAck
|
บริบทนี้เชื่อมโยงกับ WeaveConnection |
kFlagConnectionClosed
|
บริบทนี้เป็นที่มาของการแลกเปลี่ยน |
kFlagDropAck
|
เมื่อตั้งค่าไว้ ให้ส่งคําขอรับทราบโดยอัตโนมัติเมื่อส่งข้อความผ่าน UDP |
kFlagMsgRcvdFromPeer
|
เมื่อตั้งค่าแล้ว หมายความว่ามีอย่างน้อย 1 ข้อความที่ได้รับใน Exchange นี้ซึ่งขอการตอบรับ แอปพลิเคชันจะอ่านแฟล็กนี้เพื่อพิจารณาว่าต้องขอการตอบกลับสําหรับข้อความตอบกลับที่กําลังจะส่งหรือไม่ แฟล็กนี้ยังระบุได้ว่าแอปเทียบเท่ากําลังใช้ WRMP หรือไม่ |
kFlagPeerRequestedAck
|
เมื่อตั้งค่าแล้ว ให้ระบุว่ามีการรับทราบที่จะส่งคืน |
kFlagResponseExpected
|
ภายในและแก้ไขข้อบกพร่องเท่านั้น: เมื่อตั้งค่าแล้ว เลเยอร์ของ Exchange ไม่ได้ส่งข้อมูลรับทราบ |
kFlagUseEphemeralUDPPort
|
ปล่อย WeaveConnection ที่เกี่ยวข้องโดยอัตโนมัติเมื่อบริบทของ Exchange ว่าง |
@36
@36
@77
@37
@38
@38
พร็อพเพอร์ตี้ | |
---|---|
kFabricIdDefaultForTest
|
รหัสผ้าเริ่มต้น ซึ่งควรใช้เพื่อจุดประสงค์ในการทดสอบเท่านั้น |
@39
@39
ระบุวัตถุประสงค์หรือการใช้ใบรับรอง
ประเภทใบรับรองคือป้ายกํากับที่อธิบายวัตถุประสงค์ของแอปพลิเคชันหรือแอปพลิเคชัน ใบรับรองไม่ใช่ประเภทใบรับรองที่ตรงกัน แต่มาจากโครงสร้างของใบรับรองและ/หรือบริบทที่ใช้งาน การแจกแจงประเภทใบรับรองประกอบด้วยชุดค่าที่กําหนดไว้ล่วงหน้าซึ่งอธิบายแอปพลิเคชันใบรับรองที่ใช้กันโดยทั่วไป นอกจากนี้ นักพัฒนาซอฟต์แวร์ยังขยายช่วงค่าประเภทใบรับรองได้ด้วยประเภทเฉพาะแอปพลิเคชันที่อธิบายใบรับรองที่กําหนดเองหรือใบรับรองที่มีพร็อพเพอร์ตี้ความปลอดภัยที่ไม่ซ้ํากัน
ประเภทใบรับรองจะใช้เป็นหลักในการใช้นโยบายควบคุมการเข้าถึง โดยการเข้าถึงฟีเจอร์ของแอปพลิเคชันจะขึ้นอยู่กับประเภทใบรับรองที่ผู้ขอนําเสนอ
พร็อพเพอร์ตี้ | |
---|---|
kCertType_AccessToken
|
ใบรับรองโทเค็นการเข้าถึง Weave |
kCertType_AppDefinedBase
|
ประเภทใบรับรองเฉพาะแอปพลิเคชันควรมีค่า >= ค่านี้ |
kCertType_CA
|
ใบรับรอง CA |
kCertType_Device
|
ใบรับรองอุปกรณ์ Weave |
kCertType_FirmwareSigning
|
ใบรับรองการลงนามเฟิร์มแวร์ของ Weave |
kCertType_General
|
โดยใบรับรองจะเป็นประเภททั่วไปหรือไม่เจาะจง |
kCertType_Max
|
ประเภทใบรับรองไม่ควรมากกว่าค่านี้ |
kCertType_NotSpecified
|
ยังไม่ได้ระบุประเภทใบรับรอง |
kCertType_ServiceEndpoint
|
ใบรับรองปลายทางบริการ Weave |
@40
@40
ระบุแหล่งที่มาของรหัสผ่านที่ใช้ในโปรโตคอลการตรวจสอบสิทธิ์ด้วยรหัสผ่าน (เช่น
ผ้าทอ PASE)
@41
@41
พร็อพเพอร์ตี้ | |
---|---|
kWeaveAuthModeCategory_AppDefinedBase
|
ค่าฐานสําหรับหมวดหมู่การตรวจสอบสิทธิ์ที่แอปพลิเคชันกําหนด |
kWeaveAuthModeCategory_CASE
|
แอปเทียบเท่าตรวจสอบสิทธิ์โดยใช้โปรโตคอล Weave CASE |
kWeaveAuthModeCategory_General
|
เพียร์ของแอปที่ใช้กลไกทั่วไปชุดใดชุดหนึ่ง |
kWeaveAuthModeCategory_GroupKey
|
ตรวจสอบสิทธิ์ของแอปเทียบเท่าโดยใช้คีย์กลุ่มที่แชร์ |
kWeaveAuthModeCategory_PASE
|
แอปเทียบเท่าตรวจสอบสิทธิ์โดยใช้โปรโตคอล Weave PASE |
kWeaveAuthModeCategory_TAKE
|
แอปเทียบเท่าตรวจสอบสิทธิ์โดยใช้โปรโตคอล Weave TAKE |
kWeaveAuthMode_CASE_AccessToken
|
เพียร์โดยใช้ CASE ที่มีใบรับรองโทเค็นเพื่อการเข้าถึงของ Weave |
kWeaveAuthMode_CASE_AnyCert
|
เพียร์โดยใช้ CASE ที่มีใบรับรองที่กําหนดเองหรือใบรับรองที่ไม่รู้จัก |
kWeaveAuthMode_CASE_Device
|
เพียร์โดยใช้ CASE ที่มีใบรับรองอุปกรณ์ Weave |
kWeaveAuthMode_CASE_GeneralCert
|
เพียร์โดยใช้ CASE ที่มีใบรับรองทั่วไปหรือประเภทที่ไม่เฉพาะเจาะจง |
kWeaveAuthMode_CASE_ServiceEndPoint
|
เพียร์โดยใช้ CASE ที่มีใบรับรองปลายทางของบริการ Weave |
kWeaveAuthMode_NotSpecified
|
ไม่ได้ระบุโหมดการตรวจสอบสิทธิ์ |
kWeaveAuthMode_PASE_PairingCode
|
เพียร์ที่ตรวจสอบสิทธิ์โดยใช้ PASE กับรหัสการจับคู่อุปกรณ์ |
kWeaveAuthMode_TAKE_IdentificationKey
|
แอปเทียบเท่าตรวจสอบสิทธิ์โดยใช้ TAKE ด้วยคีย์การระบุโทเค็น |
kWeaveAuthMode_Unauthenticated
|
แอปเทียบเท่าไม่ได้ตรวจสอบสิทธิ์ |
@33
@43
พร็อพเพอร์ตี้ | |
---|---|
kTestKey_AES128CTRSHA1_DataKeyByte
|
ค่าไบต์ที่สร้างคีย์การเข้ารหัสซึ่งใช้สําหรับการทดสอบเท่านั้น |
kTestKey_AES128CTRSHA1_IntegrityKeyByte
|
ค่าไบต์ที่สร้างคีย์ความสมบูรณ์ ซึ่งใช้สําหรับการทดสอบเท่านั้น |
@44
@44
ขนาดเครื่องมือสําคัญของคีย์การเข้ารหัสแอปพลิเคชัน Weave
@45
@45
@53
@53
@44
@54
พร็อพเพอร์ตี้ | |
---|---|
kWeavePeerDescription_MaxLength
|
ความยาวสูงสุดของสตริง (รวมถึงอักขระ NUL) ที่แสดงโดย WeaveMessageLayer::GetPeerDescription() |
@55
@55
คําจํากัดความที่เกี่ยวข้องกับส่วนหัวของข้อความ Weave ที่เข้ารหัส
พร็อพเพอร์ตี้ | |
---|---|
kWeaveHeaderFlag_DestNodeId
|
บ่งบอกว่ามีรหัสโหนดปลายทางในส่วนหัวของข้อความ Weave |
kWeaveHeaderFlag_MsgCounterSyncReq
|
ระบุว่าผู้ส่งขอให้ซิงค์ตัวนับข้อความ |
kWeaveHeaderFlag_SourceNodeId
|
บ่งบอกว่ามีรหัสโหนดต้นทางในส่วนหัวของข้อความ Weave |
kWeaveHeaderFlag_TunneledData
|
บ่งบอกว่าเพย์โหลดข้อความ Weave เป็นแพ็กเก็ต IP แบบ Tunnel |
@66
@56
คําจํากัดความของช่องบิตสําหรับตัวระบุ EUI-64 ของ IEEE
พร็อพเพอร์ตี้ | |
---|---|
kEUI64_IG_Group
|
ค่าของบิต/กลุ่มที่ระบุตัวระบุกลุ่ม EUI-64 ของกลุ่ม |
kEUI64_IG_Individual
|
ค่าของบิต/กลุ่มเดี่ยวซึ่งระบุตัวระบุ EUI-64 ของที่อยู่แต่ละรายการ |
kEUI64_IG_Mask
|
ดอกสว่านสําหรับบิต/กลุ่ม (I/G) ภายในตัวระบุ EUI-64 หากค่า 0 แสดงว่ารหัสดังกล่าวเป็นที่อยู่แต่ละรายการ โดยค่า 1 หมายความว่ารหัสเป็นที่อยู่กลุ่ม |
kEUI64_UL_Local
|
ค่าบิตสากล/ท้องถิ่นที่ระบุตัวระบุ EUI-64 สําหรับการดูแลระบบภายใน |
kEUI64_UL_Mask
|
อัตราบิตของบิตสําหรับ Universal/Local (U/L) ภายในตัวระบุ EUI-64 ค่า 0 หมายความว่ารหัสดังกล่าวได้รับการจัดการทั่วโลก (ทั่วโลก) ค่า 1 หมายความว่ารหัสนั้นมีการดูแลระบบภายใน |
kEUI64_UL_Unversal
|
ค่าบิตสากล/ท้องถิ่นที่ระบุตัวระบุ EUI-64 สากลที่มีการดูแลจัดการ |
@57
@57
ช่วงพิเศษของรหัสโหนด Weave
พร็อพเพอร์ตี้ | |
---|---|
kMaxAlwaysLocalWeaveNodeId
|
ตัวระบุโหนด Weave น้อยกว่าหรือเท่ากับค่านี้จะถือว่าอยู่ในเครื่องเพื่ออํานวยความสะดวกในการทดสอบ |
ประเภทการเข้ารหัส Weave
WeaveEncryptionType
ประเภทการเข้ารหัสสําหรับข้อความ Weave
พร็อพเพอร์ตี้ | |
---|---|
kWeaveEncryptionType_AES128CTRSHA1
|
ข้อความที่เข้ารหัสโดยใช้การเข้ารหัส AES-128-CTR พร้อมด้วยความสมบูรณ์ของข้อความ HMAC-SHA-1 |
kWeaveEncryptionType_None
|
ข้อความไม่ได้เข้ารหัส |
ธง WeaveExchange
WeaveExchangeFlags
บิตแฟล็กส่วนหัวของ Weave Exchange
พร็อพเพอร์ตี้ | |
---|---|
kWeaveExchangeFlag_AckId
|
ระบุเวลาที่รับทราบข้อความที่ได้รับก่อนหน้านี้ |
kWeaveExchangeFlag_Initiator
|
กําหนดเมื่อผู้เริ่ม Exchange ส่งข้อความปัจจุบัน |
kWeaveExchangeFlag_NeedsAck
|
ตั้งค่าเมื่อข้อความปัจจุบันกําลังขอการตอบรับจากผู้รับ |
เวอร์ชัน WeaveExchange
WeaveExchangeVersion
เวอร์ชันส่วนหัวของ Weave Exchange
ธง WeaveMessage
WeaveMessageFlags
แฟล็กที่เชื่อมโยงกับข้อความ Weave ขาเข้าหรือขาออก
ค่าที่ระบุที่นี่ใช้ภายในช่อง WeaveMessageInfo.Flags
พร็อพเพอร์ตี้ | |
---|---|
kWeaveMessageFlag_DefaultMulticastSourceAddress
|
บ่งบอกว่าควรเลือกที่อยู่ต้นทาง IPv6 เริ่มต้นเมื่อส่งข้อความมัลติแคสต์ผ่าน IPv6 |
kWeaveMessageFlag_DelaySend
|
ระบุว่าการส่งข้อความเกิดความล่าช้า |
kWeaveMessageFlag_DestNodeId
|
บ่งบอกว่ามีรหัสโหนดปลายทางในส่วนหัวของข้อความ Weave |
kWeaveMessageFlag_DuplicateMessage
|
บ่งบอกว่าข้อความซ้ํากับข้อความที่ได้รับก่อนหน้านี้ |
kWeaveMessageFlag_FromInitiator
|
ระบุว่าแหล่งที่มาของข้อความเป็นผู้เริ่มต้นการแลกเปลี่ยนแบบ Weave |
kWeaveMessageFlag_MessageEncoded
|
บ่งบอกว่ามีการเข้ารหัส Weave แล้ว |
kWeaveMessageFlag_MsgCounterSyncReq
|
ระบุว่าผู้ส่งขอให้ซิงค์ตัวนับข้อความของแอปเทียบเท่า |
kWeaveMessageFlag_MulticastFromLinkLocal
|
ชื่อแทนที่เลิกใช้งานสําหรับ |
kWeaveMessageFlag_PeerGroupMsgIdNotSynchronized
|
ระบุว่าไม่มีการซิงค์ตัวนับข้อความสําคัญของกลุ่มแอปเทียบเท่า |
kWeaveMessageFlag_PeerRequestedAck
|
ระบุว่าผู้ส่งข้อความรับทราบเพื่อรับทราบ |
kWeaveMessageFlag_RetainBuffer
|
ระบุว่าไม่ควรนําบัฟเฟอร์ข้อความออกหลังจากส่ง |
kWeaveMessageFlag_ReuseMessageId
|
ระบุว่าต้องมีการใช้ตัวระบุข้อความซ้ํา |
kWeaveMessageFlag_ReuseSourceId
|
ระบุว่าต้องใช้ตัวระบุโหนดแหล่งที่มาที่มีอยู่ซ้ํา |
kWeaveMessageFlag_SourceNodeId
|
บ่งบอกว่ามีรหัสโหนดต้นทางในส่วนหัวของข้อความ Weave |
kWeaveMessageFlag_TunneledData
|
บ่งบอกว่าเพย์โหลดข้อความ Weave เป็นแพ็กเก็ต IP แบบ Tunnel |
kWeaveMessageFlag_ViaEphemeralUDPPort
|
ระบุว่ากําลังส่ง/รับผ่านพอร์ต UDP ชั่วคราวในพื้นที่ |
เวอร์ชัน WeaveMessage
WeaveMessageVersion
เวอร์ชันของรูปแบบข้อความ Weave
Weave จะเลือกเวอร์ชันข้อความที่เหมาะสมตามรูปแบบเฟรมที่จําเป็นสําหรับข้อความ Weave ตามค่าเริ่มต้น เวอร์ชันข้อความคือ kWeaveMessageVersion_V1 เช่น เมื่อใช้ Weave Reliable Messaging เช่น เวอร์ชันคือ kWeaveMessageVersion_V2
พร็อพเพอร์ตี้ | |
---|---|
kWeaveMessageVersion_Unspecified
|
เวอร์ชันของข้อความที่ระบุไม่ได้ |
kWeaveMessageVersion_V1
|
รูปแบบส่วนหัวของข้อความเวอร์ชัน V1 |
kWeaveMessageVersion_V2
|
รูปแบบส่วนหัวของข้อความเวอร์ชัน 2 |
รหัสย่อยของ Weave
WeaveSubnetId
Weave มีหมายเลขซับเน็ตที่สงวนไว้สําหรับอินเทอร์เฟซเครือข่ายที่แตกต่างกันในอุปกรณ์ทั่วไป
ตัวเลขเหล่านี้กําหนดให้กับค่าคงที่เชิงสัญลักษณ์ Weave ใช้หมายเลขซับเน็ตเหล่านี้เพื่อกําหนดค่าที่อยู่ IPv6 ULA ในอินเทอร์เฟซที่เหมาะสม
พร็อพเพอร์ตี้ | |
---|---|
kWeaveSubnetId_MobileDevice
|
ตัวระบุซับเน็ตสําหรับอุปกรณ์เคลื่อนที่ทั้งหมด |
kWeaveSubnetId_NotSpecified
|
สงวนไว้เป็นค่าที่ไม่ได้ระบุหรือเป็นค่าว่าง |
kWeaveSubnetId_PrimaryWiFi
|
หมายเลขซับเน็ตของอินเทอร์เฟซวิทยุ Wi-Fi |
kWeaveSubnetId_Service
|
ตัวระบุซับเน็ตสําหรับปลายทางบริการ Nest |
kWeaveSubnetId_ThreadAlarm
|
หมายเลขซับเน็ตของอินเทอร์เฟซวิทยุบนเทรด |
kWeaveSubnetId_ThreadMesh
|
ตัวระบุซับเน็ตอินเทอร์เฟซวิทยุของเทรด |
kWeaveSubnetId_WiFiAP
|
หมายเลขซับเน็ตของอินเทอร์เฟซ Wi-Fi AP ในระบบ |
รหัสผู้ให้บริการทอ
WeaveVendorId
ประเภทคําจํากัดความ
ผ้าเช็ดหน้าผ้า
uint8_t FabricSecretRotationScheme
ข้อมูลลับของสิ่งทอ
uint8_t FabricSecretScope
ระบุหมวดหมู่ของอุปกรณ์ที่ครอบครองและใช้ข้อมูลลับในผ้าได้
โหมดการตรวจสอบสิทธิ์
uint16_t WeaveAuthMode
ระบุวิธีตรวจสอบสิทธิ์โหนดเพียร์
WeaveAuthMode อธิบายวิธีการที่โหนดเทียบเท่าได้หรือควรตรวจสอบสิทธิ์ระหว่างการแลกเปลี่ยนข้อความ Weave ในบริบทที่เริ่มต้น แอปพลิเคชันจะใช้ WeaveAuthMode เพื่อแสดงโหมดการตรวจสอบสิทธิ์เพียร์ที่ต้องการสําหรับ Exchange ซึ่งเป็นการแจ้งให้เลเยอร์ความปลอดภัยและการรับส่งข้อความของ Weave ทํางานในโหมดที่ต้องการหรือล้มเหลวในการสื่อสาร ในบริบทของการตอบกลับ WeaveAuthMode จะระบุว่าโหนดที่ขอ (เพียร์) ได้รับการตรวจสอบสิทธิ์อย่างไร ซึ่งทําให้แอปพลิเคชันการตอบกลับสามารถบังคับใช้การควบคุมการเข้าถึงตามข้อมูลนี้
WeaveAuthMode ที่กําหนดให้กับข้อความ Weave ขาเข้าจะเกี่ยวข้องกับลักษณะของคีย์ที่ใช้เข้ารหัสข้อความนั้นๆ WeaveAuthMode มาจากกลไกที่มีการสร้างคีย์และเกณฑ์ที่ใช้ในการยืนยันข้อมูลประจําตัวของฝ่ายการสื่อสารในขณะที่ก่อตั้งคีย์
WeaveAuthMode ประกอบด้วยชุดค่าที่กําหนดไว้ล่วงหน้าซึ่งอธิบายถึงโหมดการตรวจสอบสิทธิ์ที่ใช้กันทั่วไป มิติข้อมูลเหล่านี้ได้รับการแบ่งตามกลไกข้อตกลงที่สําคัญ (CASE, PASE, GroupKey ฯลฯ) นักพัฒนาซอฟต์แวร์ขยาย WeaveAuthMode ได้ด้วยการกําหนดโหมดเฉพาะแอปพลิเคชัน ซึ่งใช้กับคีย์การเข้ารหัสที่เจาะจงได้
คีย์การเข้ารหัส Weave
union nl::Weave::WeaveEncryptionKey WeaveEncryptionKey
ประเภทการเข้ารหัส Weave
enum nl::Weave::WeaveEncryptionType WeaveEncryptionType
ประเภทการเข้ารหัสสําหรับข้อความ Weave
ธง WeaveExchange
enum nl::Weave::WeaveExchangeFlags WeaveExchangeFlags
บิตแฟล็กส่วนหัวของ Weave Exchange
เวอร์ชัน WeaveExchange
enum nl::Weave::WeaveExchangeVersion WeaveExchangeVersion
เวอร์ชันส่วนหัวของ Weave Exchange
ธง WeaveMessage
enum nl::Weave::WeaveMessageFlags WeaveMessageFlags
แฟล็กที่เชื่อมโยงกับข้อความ Weave ขาเข้าหรือขาออก
ค่าที่ระบุที่นี่ใช้ภายในช่อง WeaveMessageInfo.Flags
ไอคอนข้อความ WeaveMessageHeader
struct WeaveMessageInfo WeaveMessageHeader
เวอร์ชัน WeaveMessage
enum nl::Weave::WeaveMessageVersion WeaveMessageVersion
เวอร์ชันของรูปแบบข้อความ Weave
Weave จะเลือกเวอร์ชันข้อความที่เหมาะสมตามรูปแบบเฟรมที่จําเป็นสําหรับข้อความ Weave ตามค่าเริ่มต้น เวอร์ชันข้อความคือ kWeaveMessageVersion_V1 เช่น เมื่อใช้ Weave Reliable Messaging เช่น เวอร์ชันคือ kWeaveMessageVersion_V2
รหัสย่อยของ Weave
enum nl::Weave::WeaveSubnetId WeaveSubnetId
Weave มีหมายเลขซับเน็ตที่สงวนไว้สําหรับอินเทอร์เฟซเครือข่ายที่แตกต่างกันในอุปกรณ์ทั่วไป
ตัวเลขเหล่านี้กําหนดให้กับค่าคงที่เชิงสัญลักษณ์ Weave ใช้หมายเลขซับเน็ตเหล่านี้เพื่อกําหนดค่าที่อยู่ IPv6 ULA ในอินเทอร์เฟซที่เหมาะสม
ตัวแปร
ExchangeMgr
NL_DLL_EXPORT WeaveExchangeManager ExchangeMgr
ผ้า
NL_DLL_EXPORT WeaveFabricState FabricState
เลเยอร์ข้อความ
NL_DLL_EXPORT WeaveMessageLayer MessageLayer
ความปลอดภัย Security
NL_DLL_EXPORT WeaveSecurityManager SecurityMgr
การเชื่อมต่อแบบ Weave
class NL_DLL_EXPORT WeaveConnection
ผู้จัดการด้านการแลกเปลี่ยน
class NL_DLL_EXPORT WeaveExchangeManager
เลเยอร์ข้อความ
class NL_DLL_EXPORT WeaveMessageLayer
gDefaultWRMPConfig
const WRMPConfig gDefaultWRMPConfig = { WEAVE_CONFIG_WRMP_DEFAULT_INITIAL_RETRANS_TIMEOUT, WEAVE_CONFIG_WRMP_DEFAULT_ACTIVE_RETRANS_TIMEOUT, WEAVE_CONFIG_WRMP_DEFAULT_ACK_TIMEOUT, WEAVE_CONFIG_WRMP_DEFAULT_MAX_RETRANS }
kWeaveMsgEncAppKeyDiversifier
const uint8_t kWeaveMsgEncAppKeyDiversifier[] = { 0xB1, 0x1D, 0xAE, 0x5B }
เครื่องมือเปลี่ยนคีย์ที่ใช้กับอนุพันธ์คีย์การเข้ารหัสข้อความ Weave
ค่านี้แสดงถึง 4 ไบต์แรกของ SHA-1 HASH ของ "Nest Weave Message EK และ AK"
ฟังก์ชัน
AppGroupMasterKeyIdFromAuthMode
uint8_t AppGroupMasterKeyIdFromAuthMode( WeaveAuthMode authMode )
แสดงผลรหัสคีย์หลักของกลุ่มแอปพลิเคชันที่เชื่อมโยงกับโหมดการตรวจสอบสิทธิ์
CASEAuthMode
WeaveAuthMode CASEAuthMode( uint8_t certType )
แสดงผลโหมดการตรวจสอบสิทธิ์ CASE ที่เกี่ยวข้องสําหรับประเภทใบรับรองที่ระบุ
โหมด CertTypeFromAuthAuth
uint8_t CertTypeFromAuthMode( WeaveAuthMode authMode )
แสดงแหล่งที่มาของรหัสผ่านสําหรับโหมดการตรวจสอบสิทธิ์ที่ระบุ
ช่องส่วนหัวถอดรหัส
void DecodeHeaderField( const uint16_t headerField, WeaveMessageInfo *msgInfo )
ค่าเริ่มต้นของ OnOnMessageReceived
void DefaultOnMessageReceived( ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload )
ช่องส่วนหัว Encode
uint16_t EncodeHeaderField( const WeaveMessageInfo *msgInfo )
ชื่อ FindMessage
const char * FindMessageName( uint32_t inProfileId, uint8_t inMsgType )
ชื่อโปรไฟล์การค้นหา
const char * FindProfileName( uint32_t inProfileId )
ข้อผิดพลาดของรูปแบบ Weave
bool FormatWeaveError( char *buf, uint16_t bufSize, int32_t err )
หากมีข้อผิดพลาด Weave ให้แสดงสตริง C ที่สิ้นสุดโดย NULL ที่มนุษย์อ่านได้และอธิบายข้อผิดพลาดดังกล่าว
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
การคืนสินค้า |
true หากเขียนสตริงคําอธิบายลงในบัฟเฟอร์ที่ระบุ
|
||||||
การคืนสินค้า |
false หากข้อผิดพลาดที่ระบุไม่ใช่ข้อผิดพลาด Weave
|
สร้าง WeaveNodeId
NL_DLL_EXPORT WEAVE_ERROR GenerateWeaveNodeId( uint64_t & nodeId )
สร้างรหัสโหนด Weave แบบสุ่ม
ฟังก์ชันนี้จะสร้างรหัสโหนด Weave ที่ไม่ซ้ําแบบ 64 บิตในเครื่อง ฟังก์ชันนี้ใช้แหล่งข้อมูลแบบสุ่มที่มีการเข้ารหัสที่รัดกุม เพื่อให้มั่นใจว่าผู้ใช้ที่ไม่ซ้ําจะสร้างขึ้น โปรดทราบว่าบิต 57 ของรหัสโหนด Weave ที่สร้างขึ้นได้รับการตั้งค่าเป็น 1 เพื่อระบุว่ารหัสโหนด Weave ที่สร้างขึ้นจะไม่ซ้ํากัน (ไม่ใช่ทั่วโลก)
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
||
แสดงผลค่า |
|
ดัชนี GetFibonacciForIndex
uint32_t GetFibonacciForIndex( uint32_t index )
ฟังก์ชันนี้สร้างหมายเลข Fibonacci แบบ 32 บิตสําหรับดัชนี 32 บิตที่ระบุ
รายละเอียด | |
---|---|
การคืนสินค้า |
หมายเลข fibonacci ที่ไม่มีลายเซ็น 32 บิต
|
ชื่อ GetMessage
const char * GetMessageName( uint32_t profileId, uint8_t msgType )
ชื่อ GetProfile
const char * GetProfileName( uint32_t profileId )
GetRandU16
uint16_t GetRandU16( void )
ฟังก์ชันนี้จะสร้างหมายเลขสุ่มที่ไม่มีเครื่องหมาย 16 บิต
รายละเอียด | |
---|---|
การคืนสินค้า |
จํานวนเต็มสุ่มที่ไม่มีเครื่องหมาย 16 บิต
|
GetRandU32
uint32_t GetRandU32( void )
ฟังก์ชันนี้จะสร้างหมายเลขสุ่มที่ไม่มีเครื่องหมาย 32 บิต
รายละเอียด | |
---|---|
การคืนสินค้า |
จํานวนเต็มสุ่มที่ไม่มีเครื่องหมาย 32 บิต
|
GetRandU64
uint64_t GetRandU64( void )
ฟังก์ชันนี้จะสร้างหมายเลขสุ่มที่ไม่มีเครื่องหมาย 64 บิต
รายละเอียด | |
---|---|
การคืนสินค้า |
จํานวนเต็มสุ่มที่ไม่มีเครื่องหมาย 64 บิต
|
GetRandU8
uint8_t GetRandU8( void )
ฟังก์ชันนี้จะสร้างหมายเลขสุ่มแบบ 8 บิตที่ไม่มีการรับรอง
รายละเอียด | |
---|---|
การคืนสินค้า |
จํานวนเต็มสุ่มที่ไม่มีเครื่องหมาย 8 บิต
|
ชื่อ GetVendor
const char * GetVendorName( uint16_t vendorId )
โหมดคีย์กลุ่ม
WeaveAuthMode GroupKeyAuthMode( uint32_t keyId )
แสดงผลโหมดการตรวจสอบสิทธิ์คีย์กลุ่มที่เกี่ยวข้องสําหรับรหัสคีย์ที่ระบุ
IPv6InterfaceIdToWeaveNodeId
uint64_t IPv6InterfaceIdToWeaveNodeId( uint64_t interfaceId )
แปลงตัวระบุอินเทอร์เฟซที่อยู่ IPv6 เป็นตัวระบุโหนด Weave
เพื่อความสะดวกในการทดสอบ ตัวระบุโหนดน้อยกว่าหรือเท่ากับ #kMaxAlwaysLocalWeaveNodeId (65535) จะถือว่าเป็น 'local' และตั้งค่าบิต Universal/Local เป็น 0 วิธีนี้ทําให้การแสดงสตริงของที่อยู่ IPv6 ที่เกี่ยวข้องง่ายขึ้น เช่น ULA สําหรับตัวระบุโหนด 10
จะเป็น FD00:0
:1:1::A
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
||
การคืนสินค้า |
ตัวระบุโหนด Weave แบบ 64 บิตที่แมปแล้ว
|
IsCASEAuthMode
bool IsCASEAuthMode( WeaveAuthMode authMode )
เป็นจริงหากโหมดการตรวจสอบสิทธิ์อิงตามโปรโตคอล Weave CASE
IsCertAuthMode
bool IsCertAuthMode( WeaveAuthMode authMode )
เป็นจริงหากโหมดการตรวจสอบสิทธิ์อิงตามการมีคีย์ส่วนตัวที่เชื่อมโยงกับใบรับรอง
โหมดคีย์กลุ่ม
bool IsGroupKeyAuthMode( WeaveAuthMode authMode )
เป็นจริงหากโหมดการตรวจสอบสิทธิ์อิงตามการเป็นเจ้าของคีย์กลุ่มที่แชร์
IsPASEAuthMode
bool IsPASEAuthMode( WeaveAuthMode authMode )
เป็นจริงหากโหมดการตรวจสอบสิทธิ์อิงตามโปรโตคอล Weave PASE
โหมดการตรวจสอบสิทธิ์รหัสผ่าน
bool IsPasswordAuthMode( WeaveAuthMode authMode )
เป็นจริงหากโหมดการตรวจสอบสิทธิ์เป็นเจ้าของรหัสผ่านที่แชร์
IsTAKEAuthMode
bool IsTAKEAuthMode( WeaveAuthMode authMode )
เป็นจริงหากโหมดการตรวจสอบสิทธิ์อิงตามโปรโตคอล Weave TAKE
IsWRMPControlMessage
bool IsWRMPControlMessage( uint32_t profileId, uint8_t msgType )
J2N_ByteArray
WEAVE_ERROR J2N_ByteArray( JNIEnv *env, jbyteArray inArray, uint8_t *& outArray, uint32_t & outArrayLen )
J2N_ByteArrayFieldVal
WEAVE_ERROR J2N_ByteArrayFieldVal( JNIEnv *env, jobject obj, const char *fieldName, uint8_t *& outArray, uint32_t & outArrayLen )
J2N_ByteArrayInPlace
WEAVE_ERROR J2N_ByteArrayInPlace( JNIEnv *env, jbyteArray inArray, uint8_t *outArray, uint32_t maxArrayLen )
J2N_EnumFieldVal
WEAVE_ERROR J2N_EnumFieldVal( JNIEnv *env, jobject obj, const char *fieldName, const char *fieldType, int & outVal )
J2N_EnumVal
WEAVE_ERROR J2N_EnumVal( JNIEnv *env, jobject enumObj, int & outVal )
J2N_IntFieldVal
WEAVE_ERROR J2N_IntFieldVal( JNIEnv *env, jobject obj, const char *fieldName, jint & outVal )
J2N_LongFieldVal
WEAVE_ERROR J2N_LongFieldVal( JNIEnv *env, jobject obj, const char *fieldName, jlong & outVal )
J2N_ShortFieldVal
WEAVE_ERROR J2N_ShortFieldVal( JNIEnv *env, jobject obj, const char *fieldName, jshort & outVal )
J2N_StringFieldVal
WEAVE_ERROR J2N_StringFieldVal( JNIEnv *env, jobject obj, const char *fieldName, char *& outVal )
ชื่อคลาส
WEAVE_ERROR MakeClassName( const char *basePackageName, const char *relativeClassName, char *& classNameBuf )
โหมด PASEAuth
WeaveAuthMode PASEAuthMode( uint8_t pwSource )
แสดงผลโหมดการตรวจสอบสิทธิ์ PASE ที่เกี่ยวข้องสําหรับแหล่งที่มาของรหัสผ่านที่ระบุ
PasswordSourceFromAuthMode
uint8_t PasswordSourceFromAuthMode( WeaveAuthMode authMode )
แสดงแหล่งที่มาของรหัสผ่านสําหรับโหมดการตรวจสอบสิทธิ์ที่ระบุ
ข้อมูลงานพิมพ์
void PrintTunnelInfo( const WeaveConnectionTunnel & tun, const TCPEndPoint & fromEndPoint, const TCPEndPoint & toEndPoint, const PacketBuffer & data )
โทเฮกซ์
char ToHex( const uint8_t data )
ToHexString
void ToHexString( const uint8_t *data, size_t dataLen, char *& outBuf, size_t & outBufSize )
การเข้ารหัสคีย์ Weave
void WeaveEncryptionKeyToString( uint8_t encType, const WeaveEncryptionKey & key, char *buf, size_t bufSize )
WeaveFabricIdToIPv6GlobalId
uint64_t WeaveFabricIdToIPv6GlobalId( uint64_t fabricId )
แปลงตัวระบุผ้า Weave เป็นตัวระบุ IPv6 ULA ทั่วโลก
ตัวระบุส่วนกลางของ ULA สําหรับที่อยู่ผ้าคือรหัสผ้า 64 บิตที่อยู่ต่ํากว่า 40 บิต
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
||
การคืนสินค้า |
ตัวระบุทั่วโลกของ IPv6 ที่แมปแล้ว
|
WeaveMessageSourceToStr
void WeaveMessageSourceToStr( char *buf, uint32_t bufSize, const WeaveMessageInfo *msgInfo )
โปรดใช้ WeaveMessageLayer::GetPeerDescription() แทน
WeaveNodeAddrToStr
void WeaveNodeAddrToStr( char *buf, uint32_t bufSize, uint64_t nodeId, const IPAddress *addr, uint16_t port, WeaveConnection *con )
โปรดใช้ WeaveMessageLayer::GetPeerDescription() แทน
รหัส WeaveNodeIdToIPv6InterfaceId
uint64_t WeaveNodeIdToIPv6InterfaceId( uint64_t nodeId )
แปลงตัวระบุโหนด Weave เป็นตัวระบุอินเทอร์เฟซที่อยู่ IPv6
ตัวระบุโหนด Weave คือ Universal/Local EUI-64 ซึ่งเปลี่ยนตาม RFC-3513 เป็นตัวระบุอินเทอร์เฟซด้วยการเปลี่ยนบิต Universal/Local (บิต 57 ที่นับ LSB เป็น 0)
เพื่อความสะดวกในการทดสอบ ตัวระบุโหนดน้อยกว่าหรือเท่ากับ #kMaxAlwaysLocalWeaveNodeId (65535) จะถือว่าเป็น 'local' และตั้งค่าบิต Universal/Local เป็น 0 วิธีนี้ทําให้การแสดงสตริงของที่อยู่ IPv6 ที่เกี่ยวข้องง่ายขึ้น เช่น ULA สําหรับตัวระบุโหนด 10
จะเป็น FD00:0
:1:1::A
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
||
การคืนสินค้า |
ตัวระบุอินเทอร์เฟซ IPv6
|
สูงสุด
const _T & max( const _T & a, const _T & b )
นาที
const _T & min( const _T & a, const _T & b )