SRP
Bu modül, SRP istemci davranışını kontrol eden işlevler içerir.
Özet
Bu modülde, Hizmet Kayıt Protokolü'nün işlevleri yer alır.
Bu modül SRP istemci arabellekleri ve hizmet havuzu için işlevler içerir.
Bu modüldeki işlevler yalnızca OPENTHREAD_CONFIG_SRP_CLIENT_BUFFERS_ENABLE özelliği etkinleştirildiğinde kullanılabilir.
Sıralamalar |
|
---|---|
otSrpClientItemState{
|
enum SRP istemci öğesinin (hizmet veya ana makine bilgisi) durumunu belirtir. |
otSrpServerAddressMode{
|
enum SRP sunucusu tarafından kullanılan adres modunu temsil eder. |
otSrpServerState{
|
enum SRP sunucusunun durumunu gösterir. |
Türdefler |
|
---|---|
otSrpClientAutoStartCallback)(const otSockAddr *aServerSockAddr, void *aContext)
|
typedefvoid(*
İşaretçi türü, SRP istemcisi tarafından otomatik olarak başlatıldığında veya durdurulduğunda kullanıcıya bilgi vermek için kullanılan geri çağırmayı tanımlar. |
otSrpClientBuffersServiceEntry
|
typedef SRP istemci hizmetleri havuzu girişini temsil eder. |
otSrpClientCallback)(otError aError, const otSrpClientHostInfo *aHostInfo, const otSrpClientService *aServices, const otSrpClientService *aRemovedServices, void *aContext)
|
typedefvoid(*
İşaretçi türü, değişiklikleri/etkinlikleri/hataları kullanıcıya bildirmek için SRP istemcisi tarafından kullanılan geri çağırmayı tanımlar. |
otSrpClientHostInfo
|
typedefstruct otSrpClientHostInfo
SRP istemcisi ana makine bilgisini temsil eder. |
otSrpClientService
|
typedefstruct otSrpClientService
Bir SRP müşteri hizmetini temsil eder. |
otSrpServerAddressMode
|
typedef SRP sunucusu tarafından kullanılan adres modunu temsil eder. |
otSrpServerHost
|
typedefstruct otSrpServerHost
Bu opak tür, bir SRP hizmet ana makinesini temsil eder. |
otSrpServerLeaseConfig
|
typedefstruct otSrpServerLeaseConfig
SRP sunucusu LEASE ve KEY-LEASE yapılandırmalarını içerir. |
otSrpServerLeaseInfo
|
typedefstruct otSrpServerLeaseInfo
Bir ana makinenin/hizmetin SRP sunucu kiralama bilgilerini içerir. |
otSrpServerResponseCounters
|
typedefstruct otSrpServerResponseCounters
SRP sunucu yanıtlarının istatistiklerini içerir. |
otSrpServerService
|
typedefstruct otSrpServerService
Bu opak tür bir SRP hizmetini temsil eder. |
otSrpServerServiceUpdateHandler)(otSrpServerServiceUpdateId aId, const otSrpServerHost *aHost, uint32_t aTimeout, void *aContext)
|
typedefvoid(*
SRP hizmet güncellemelerini yönetir. |
otSrpServerServiceUpdateId
|
typedefuint32_t
SRP hizmet güncellemesi işleminin SRP sunucusundaki kimliği. |
otSrpServerTtlConfig
|
typedefstruct otSrpServerTtlConfig
SRP sunucusu TTL yapılandırmalarını içerir. |
İşlevler |
|
---|---|
otSrpClientAddService(otInstance *aInstance, otSrpClientService *aService)
|
Sunucuya kaydedilecek bir hizmet ekler.
|
otSrpClientBuffersAllocateService(otInstance *aInstance)
|
Havuzdan yeni bir hizmet girişi ayırır.
|
otSrpClientBuffersFreeAllServices(otInstance *aInstance)
|
void
Önceden ayrılmış tüm hizmet girişlerini serbest bırakır.
|
otSrpClientBuffersFreeService(otInstance *aInstance, otSrpClientBuffersServiceEntry *aService)
|
void
Önceden ayrılmış bir hizmet girişini serbest bırakır.
|
otSrpClientBuffersGetHostAddressesArray(otInstance *aInstance, uint8_t *aArrayLength)
|
SRP istemci ana makine adres listesi olarak kullanılacak IPv6 adresi girişleri dizisini alır.
|
otSrpClientBuffersGetHostNameString(otInstance *aInstance, uint16_t *aSize)
|
char *
SRP istemci ana makine adı için kullanılacak dize arabelleğini alır.
|
otSrpClientBuffersGetServiceEntryInstanceNameString(otSrpClientBuffersServiceEntry *aEntry, uint16_t *aSize)
|
char *
Bir hizmet girişinden hizmet örneği adı için dize arabelleğini alır.
|
otSrpClientBuffersGetServiceEntryServiceNameString(otSrpClientBuffersServiceEntry *aEntry, uint16_t *aSize)
|
char *
Bir hizmet girişinden hizmet adı için dize arabelleğini alır.
|
otSrpClientBuffersGetServiceEntryTxtBuffer(otSrpClientBuffersServiceEntry *aEntry, uint16_t *aSize)
|
uint8_t *
Bir hizmet girişinden TXT kaydı arabelleğini alır.
|
otSrpClientBuffersGetSubTypeLabelsArray(otSrpClientBuffersServiceEntry *aEntry, uint16_t *aArrayLength)
|
const char **
Hizmet girişinden hizmet alt türü etiketleri için diziyi alır.
|
otSrpClientClearHostAndServices(otInstance *aInstance)
|
void
Tüm ana makine bilgilerini ve tüm hizmetleri temizler.
|
otSrpClientClearService(otInstance *aInstance, otSrpClientService *aService)
|
Bir hizmeti temizleyerek istemci hizmeti listesinden hemen kaldırır.
|
otSrpClientDisableAutoStartMode(otInstance *aInstance)
|
void
Otomatik başlatma modunu devre dışı bırakır.
|
otSrpClientEnableAutoHostAddress(otInstance *aInstance)
|
Otomatik ana makine adresi modunu etkinleştirir.
|
otSrpClientEnableAutoStartMode(otInstance *aInstance, otSrpClientAutoStartCallback aCallback, void *aContext)
|
void
Otomatik başlatma modunu etkinleştirir.
|
otSrpClientGetDomainName(otInstance *aInstance)
|
const char *
SRP istemcisi tarafından kullanılan alan adını alır.
|
otSrpClientGetHostInfo(otInstance *aInstance)
|
const otSrpClientHostInfo *
Ana makine bilgilerini alır.
|
otSrpClientGetKeyLeaseInterval(otInstance *aInstance)
|
uint32_t
SRP güncelleme isteklerinde kullanılan varsayılan anahtar kiralama aralığını alır.
|
otSrpClientGetLeaseInterval(otInstance *aInstance)
|
uint32_t
SRP güncelleme isteklerinde kullanılan varsayılan kiralama aralığını alır.
|
otSrpClientGetServerAddress(otInstance *aInstance)
|
const otSockAddr *
SRP istemcisi tarafından kullanılan SRP sunucusunun yuva adresini (IPv6 adresi ve bağlantı noktası numarası) alır.
|
otSrpClientGetServices(otInstance *aInstance)
|
const otSrpClientService *
İstemci tarafından yönetilen hizmetlerin listesini alır.
|
otSrpClientGetTtl(otInstance *aInstance)
|
uint32_t
SRP güncelleme isteklerine dahil edilen her kayıttaki TTL değerini alır.
|
otSrpClientIsAutoStartModeEnabled(otInstance *aInstance)
|
bool
Otomatik başlatma modunun mevcut durumunu belirtir (etkin veya devre dışı).
|
otSrpClientIsRunning(otInstance *aInstance)
|
bool
SRP istemcisinin çalışıp çalışmadığını belirtir.
|
otSrpClientIsServiceKeyRecordEnabled(otInstance *aInstance)
|
bool
"Hizmet anahtarı kaydı dahil etme" modunun etkin mi yoksa devre dışı mı olduğunu belirtir.
|
otSrpClientItemStateToString(otSrpClientItemState aItemState)
|
const char *
Bir
otSrpClientItemState dizesini bir dizeye dönüştürür. |
otSrpClientRemoveHostAndServices(otInstance *aInstance, bool aRemoveKeyLease, bool aSendUnregToServer)
|
Ana makine bilgilerinin ve tüm hizmetlerin kaldırma işlemini başlatır.
|
otSrpClientRemoveService(otInstance *aInstance, otSrpClientService *aService)
|
Bir hizmetin sunucu kaydının silinmesini ister.
|
otSrpClientSetCallback(otInstance *aInstance, otSrpClientCallback aCallback, void *aContext)
|
void
Geri çağırmayı, arayana SRP istemcisinden kaynaklanan etkinlikler/değişiklikler hakkında bilgi verecek şekilde ayarlar.
|
otSrpClientSetDomainName(otInstance *aInstance, const char *aName)
|
SRP istemcisi tarafından kullanılacak alan adını ayarlar.
|
otSrpClientSetHostAddresses(otInstance *aInstance, const otIp6Address *aIp6Addresses, uint8_t aNumAddresses)
|
Ana makine IPv6 adresinin listesini ayarlar/günceller.
|
otSrpClientSetHostName(otInstance *aInstance, const char *aName)
|
Ana makine adı etiketini ayarlar.
|
otSrpClientSetKeyLeaseInterval(otInstance *aInstance, uint32_t aInterval)
|
void
SRP güncelleme isteklerinde kullanılan varsayılan anahtar kiralama aralığını ayarlar.
|
otSrpClientSetLeaseInterval(otInstance *aInstance, uint32_t aInterval)
|
void
SRP güncelleme isteklerinde kullanılan varsayılan kiralama aralığını ayarlar.
|
otSrpClientSetServiceKeyRecordEnabled(otInstance *aInstance, bool aEnabled)
|
void
"Hizmet anahtarı kaydı dahil etme" modunu etkinleştirir/devre dışı bırakır.
|
otSrpClientSetTtl(otInstance *aInstance, uint32_t aTtl)
|
void
SRP güncelleme isteklerine dahil edilen her kayıtta TTL değerini belirler.
|
otSrpClientStart(otInstance *aInstance, const otSockAddr *aServerSockAddr)
|
SRP istemci işlemini başlatır.
|
otSrpClientStop(otInstance *aInstance)
|
void
SRP istemci işlemini durdurur.
|
otSrpServerGetAddressMode(otInstance *aInstance)
|
SRP sunucusu tarafından kullanılan adres modunu döndürür.
|
otSrpServerGetAnycastModeSequenceNumber(otInstance *aInstance)
|
uint8_t
Her noktaya yayın adres moduyla kullanılan sıra numarasını döndürür.
|
otSrpServerGetDomain(otInstance *aInstance)
|
const char *
SRP sunucusu tarafından yetkilendirilen alanı döndürür.
|
otSrpServerGetLeaseConfig(otInstance *aInstance, otSrpServerLeaseConfig *aLeaseConfig)
|
void
SRP sunucusu LEASE ve KEY-LEASE yapılandırmalarını döndürür.
|
otSrpServerGetNextHost(otInstance *aInstance, const otSrpServerHost *aHost)
|
const otSrpServerHost *
SRP sunucusunda sonraki kayıtlı ana makineyi döndürür.
|
otSrpServerGetPort(otInstance *aInstance)
|
uint16_t
SRP sunucusunun dinlediği bağlantı noktasını döndürür.
|
otSrpServerGetResponseCounters(otInstance *aInstance)
|
const otSrpServerResponseCounters *
SRP sunucusunun yanıt sayaçlarını döndürür.
|
otSrpServerGetState(otInstance *aInstance)
|
SRP sunucusunun durumunu döndürür.
|
otSrpServerGetTtlConfig(otInstance *aInstance, otSrpServerTtlConfig *aTtlConfig)
|
void
SRP sunucusu TTL yapılandırmasını döndürür.
|
otSrpServerHandleServiceUpdateResult(otInstance *aInstance, otSrpServerServiceUpdateId aId, otError aError)
|
void
SRP güncellemesi işlemenin sonucunu SRP sunucusuna bildirir.
|
otSrpServerHostGetAddresses(const otSrpServerHost *aHost, uint8_t *aAddressesNum)
|
const otIp6Address *
Belirli bir ana bilgisayarın adreslerini döndürür.
|
otSrpServerHostGetFullName(const otSrpServerHost *aHost)
|
const char *
Ana makinenin tam adını döndürür.
|
otSrpServerHostGetLeaseInfo(const otSrpServerHost *aHost, otSrpServerLeaseInfo *aLeaseInfo)
|
void
Belirli bir ana makinenin LEASE ve KEY-LEASE bilgilerini döndürür.
|
otSrpServerHostGetNextService(const otSrpServerHost *aHost, const otSrpServerService *aService)
|
const otSrpServerService *
Belirli bir ana makinenin sonraki hizmetini döndürür.
|
otSrpServerHostIsDeleted(const otSrpServerHost *aHost)
|
bool
SRP hizmet ana makinesinin silinip silinmediğini bildirir.
|
otSrpServerHostMatchesFullName(const otSrpServerHost *aHost, const char *aFullName)
|
bool
Ana makinenin belirli bir ana makine adıyla eşleşip eşleşmediğini belirtir.
|
otSrpServerIsAutoEnableMode(otInstance *aInstance)
|
bool
Otomatik etkinleştirme modunun etkin mi yoksa devre dışı mı olduğunu belirtir.
|
otSrpServerParseSubTypeServiceName(const char *aSubTypeServiceName, char *aLabel, uint8_t aLabelSize)
|
Alt tür hizmet adını (tam ad) ayrıştırır ve alt tür etiketini ayıklar.
|
otSrpServerServiceGetHost(const otSrpServerService *aService)
|
const otSrpServerHost *
Hizmet örneğinin bulunduğu ana makineyi döndürür.
|
otSrpServerServiceGetInstanceLabel(const otSrpServerService *aService)
|
const char *
Hizmetin hizmet örneği etiketini (örnek adındaki ilk etiket) döndürür.
|
otSrpServerServiceGetInstanceName(const otSrpServerService *aService)
|
const char *
Hizmetin tam hizmet örneği adını döndürür.
|
otSrpServerServiceGetLeaseInfo(const otSrpServerService *aService, otSrpServerLeaseInfo *aLeaseInfo)
|
void
Belirli bir hizmetin LEASE ve KEY-LEASE bilgilerini döndürür.
|
otSrpServerServiceGetNumberOfSubTypes(const otSrpServerService *aService)
|
uint16_t
Hizmetin alt türlerinin sayısını alır.
|
otSrpServerServiceGetPort(const otSrpServerService *aService)
|
uint16_t
Hizmet örneğinin bağlantı noktasını döndürür.
|
otSrpServerServiceGetPriority(const otSrpServerService *aService)
|
uint16_t
Hizmet örneğinin önceliğini döndürür.
|
otSrpServerServiceGetServiceName(const otSrpServerService *aService)
|
const char *
Hizmetin tam hizmet adını döndürür.
|
otSrpServerServiceGetSubTypeServiceNameAt(const otSrpServerService *aService, uint16_t aIndex)
|
const char *
Belirli bir dizinde hizmetin alt türü hizmet adını (tam adı) alır.
|
otSrpServerServiceGetTtl(const otSrpServerService *aService)
|
uint32_t
Hizmet örneğinin TTL'sini döndürür.
|
otSrpServerServiceGetTxtData(const otSrpServerService *aService, uint16_t *aDataLength)
|
const uint8_t *
Hizmet örneğinin TXT kayıt verilerini döndürür.
|
otSrpServerServiceGetWeight(const otSrpServerService *aService)
|
uint16_t
Hizmet örneğinin ağırlığını döndürür.
|
otSrpServerServiceHasSubTypeServiceName(const otSrpServerService *aService, const char *aSubTypeServiceName)
|
bool
Hizmetin belirli bir alt türü olup olmadığını belirtir.
|
otSrpServerServiceIsDeleted(const otSrpServerService *aService)
|
bool
SRP hizmetinin silinip silinmediğini belirtir.
|
otSrpServerServiceMatchesInstanceName(const otSrpServerService *aService, const char *aInstanceName)
|
bool
Bu hizmetin belirli bir hizmet örneği adıyla eşleşip eşleşmediğini belirtir.
|
otSrpServerServiceMatchesServiceName(const otSrpServerService *aService, const char *aServiceName)
|
bool
Bu hizmetin belirli bir hizmet adıyla eşleşip eşleşmediğini belirtir.
|
otSrpServerSetAddressMode(otInstance *aInstance, otSrpServerAddressMode aMode)
|
SRP sunucusu tarafından kullanılacak adres modunu ayarlar.
|
otSrpServerSetAnycastModeSequenceNumber(otInstance *aInstance, uint8_t aSequenceNumber)
|
Her noktaya yayın adres moduyla kullanılan sıra numarasını ayarlar.
|
otSrpServerSetAutoEnableMode(otInstance *aInstance, bool aEnabled)
|
void
SRP sunucusunda otomatik etkinleştirme modunu etkinleştirir/devre dışı bırakır.
|
otSrpServerSetDomain(otInstance *aInstance, const char *aDomain)
|
SRP sunucusunda alanı ayarlar.
|
otSrpServerSetEnabled(otInstance *aInstance, bool aEnabled)
|
void
SRP sunucusunu etkinleştirir/devre dışı bırakır.
|
otSrpServerSetLeaseConfig(otInstance *aInstance, const otSrpServerLeaseConfig *aLeaseConfig)
|
SRP sunucusu LEASE ve KEY-LEASE yapılandırmalarını ayarlar.
|
otSrpServerSetServiceUpdateHandler(otInstance *aInstance, otSrpServerServiceUpdateHandler aServiceHandler, void *aContext)
|
void
SRP hizmet güncellemeleri işleyicisini SRP sunucusunda ayarlar.
|
otSrpServerSetTtlConfig(otInstance *aInstance, const otSrpServerTtlConfig *aTtlConfig)
|
SRP sunucusu TTL yapılandırmasını ayarlar.
|
Yapılar |
|
---|---|
otSrpClientBuffersServiceEntry |
SRP istemci hizmetleri havuzu girişini temsil eder. |
otSrpClientHostInfo |
SRP istemcisi ana makine bilgisini temsil eder. |
otSrpClientService |
Bir SRP müşteri hizmetini temsil eder. |
otSrpServerLeaseConfig |
SRP sunucusu LEASE ve KEY-LEASE yapılandırmalarını içerir. |
otSrpServerLeaseInfo |
Bir ana makinenin/hizmetin SRP sunucu kiralama bilgilerini içerir. |
otSrpServerResponseCounters |
SRP sunucu yanıtlarının istatistiklerini içerir. |
otSrpServerTtlConfig |
SRP sunucusu TTL yapılandırmalarını içerir. |
Sıralamalar
otSrpClientItemState
otSrpClientItemState
SRP istemci öğesinin (hizmet veya ana makine bilgisi) durumunu belirtir.
Özellikler | |
---|---|
OT_SRP_CLIENT_ITEM_STATE_ADDING
|
Öğe ekleniyor/kaydediliyor. |
OT_SRP_CLIENT_ITEM_STATE_REFRESHING
|
Öğe yenileniyor. |
OT_SRP_CLIENT_ITEM_STATE_REGISTERED
|
Öğe sunucuya kaydedildi. |
OT_SRP_CLIENT_ITEM_STATE_REMOVED
|
Öğe kaldırıldı. |
OT_SRP_CLIENT_ITEM_STATE_REMOVING
|
Öğe kaldırılıyor. |
OT_SRP_CLIENT_ITEM_STATE_TO_ADD
|
Eklenecek/kaydedilecek öğe. |
OT_SRP_CLIENT_ITEM_STATE_TO_REFRESH
|
Yenilenecek öğe (kontratı yenilemek için yeniden kaydolun). |
OT_SRP_CLIENT_ITEM_STATE_TO_REMOVE
|
Kaldırılacak öğe. |
otSrpServerAddressMode
otSrpServerAddressMode
SRP sunucusu tarafından kullanılan adres modunu temsil eder.
Adres modu, adresin ve bağlantı noktası numarasının SRP sunucusu tarafından nasıl belirlendiğini ve bu bilginin Thread Network Data'da nasıl yayınlanacağını belirtir.
Özellikler | |
---|---|
OT_SRP_SERVER_ADDRESS_MODE_ANYCAST
|
Her noktaya yayın adres modu. |
OT_SRP_SERVER_ADDRESS_MODE_UNICAST
|
Tek noktaya yayın adres modu. |
otSrpServerState
otSrpServerState
SRP sunucusunun durumunu gösterir.
Özellikler | |
---|---|
OT_SRP_SERVER_STATE_DISABLED
|
SRP sunucusu devre dışı bırakıldı. |
OT_SRP_SERVER_STATE_RUNNING
|
SRP sunucusu etkin ve çalışıyor. |
OT_SRP_SERVER_STATE_STOPPED
|
SRP sunucusu etkinleştirildi ancak durduruldu. |
Türdefler
otSrpClientAutoStartCallback
void(* otSrpClientAutoStartCallback)(const otSockAddr *aServerSockAddr, void *aContext)
İşaretçi türü, SRP istemcisi tarafından otomatik olarak başlatıldığında veya durdurulduğunda kullanıcıya bilgi vermek için kullanılan geri çağırmayı tanımlar.
Bu yalnızca otomatik başlatma özelliği OPENTHREAD_CONFIG_SRP_CLIENT_AUTO_START_API_ENABLE
etkinleştirildiğinde kullanılır.
Bu geri çağırma, otomatik başlatma modu etkinleştirildiğinde ve SRP istemcisi otomatik olarak başlatıldığında veya durdurulduğunda çağrılır.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
otSrpClientBuffersServiceEntry
struct otSrpClientBuffersServiceEntry otSrpClientBuffersServiceEntry
SRP istemci hizmetleri havuzu girişini temsil eder.
otSrpClientCallback
void(* otSrpClientCallback)(otError aError, const otSrpClientHostInfo *aHostInfo, const otSrpClientService *aServices, const otSrpClientService *aRemovedServices, void *aContext)
İşaretçi türü, değişiklikleri/etkinlikleri/hataları kullanıcıya bildirmek için SRP istemcisi tarafından kullanılan geri çağırmayı tanımlar.
Bu geri çağırma, SRP sunucusuyla bir güncellemenin başarıyla kaydedilmesinde (yani ana makine bilgilerinin ve/veya bazı hizmetlerin eklenmesi/kaldırılması) ya da bir hata veya hata oluştuğunda (ör. sunucu bir güncelleme isteğini reddetmesi veya yanıt beklenirken istemci zaman aşımına uğraması vb.) çağrılır.
Bir güncellemenin başarılı bir şekilde yeniden kaydedilmesi durumunda, aError
parametresi OT_ERROR_NONE
olur ve geri çağırma için ana makine bilgileri ile hizmetlerin tam listesi giriş parametreleri olarak sağlanır. Ana makine bilgileri ve hizmetlerinin her birinin, ilgili veri yapısının karşılık gelen mState
üye değişkeninde kendi durumunu takip ettiğini unutmayın (ana makine bilgisinin/hizmetinin kayıtlı olup olmadığını veya hâlâ eklenme ya da kaldırılma durumunu belirten durum).
Kaldırılan hizmetlerin listesi, geri çağırmada kendi bağlı listesi aRemovedServices
olarak iletilir. Geri çağırma çağrıldığında, SRP istemcisinin (OpenThread uygulaması) aRemovedServices
içinde listelenen kaldırılan hizmet örnekleriyle tamamlandığını ve artık bunları izlemediğini/depolamadığını (yani, geri çağırmadan otSrpClientGetServices()
adını verdiğimizde kaldırılan hizmetlerin döndürülen listede olmayacağını unutmayın). Geri çağırmada kaldırılan hizmetlerin ayrı bir listesini sağlamak, kullanıcıya hangi öğelerin artık kaldırıldığını belirtmeye yardımcı olur ve kullanıcının örnekleri yeniden talep etmesine/yeniden kullanmasına olanak tanır.
Sunucu bir SRP güncelleme isteğini reddederse DNS yanıt kodu (RFC 2136) aşağıdaki hatalarla eşleştirilir:
- (0) NOERROR Başarılı (hata durumu yok) -> OT_ERROR_NONE
- (1) FORMERR Sunucusu biçim hatası nedeniyle yorumlanamıyor -> OT_ERROR_PARSE
- (2) SERVFAIL Sunucusu dahili bir hatayla karşılaştı -> OT_ERROR_FAILED
- (3) Var olması gereken NXDOMAIN Adı mevcut değil -> OT_ERROR_NOT_FOUND
- (4) NOTIMP Sunucusu şu sorgu türünü desteklemiyor (OpCode) -> OT_ERROR_NOT_IMPLEMENTED
- (5) REFUSED Sunucu, politika/güvenlik nedeniyle reddedildi -> OT_ERROR_SECURITY
- (6) YXDOMAIN Mevcut olmaması gereken bir ad mevcut. -> OT_ERROR_DUPLICATED
- (7) YXRRSET Mevcut olmaması gereken bazı RRset'ler var -> OT_ERROR_DUPLICATED
- (8) NXRRSET Mevcut olması gereken bazı RRset'ler mevcut değil -> OT_ERROR_NOT_FOUND
- (9) NOTAUTH Hizmeti alt bölge için yetkili değil -> OT_ERROR_SECURITY
- (10) NOTZONE Bölgede bir ad yok -> OT_ERROR_PARSE
- (20) BADNAME Hatalı ad -> OT_ERROR_PARSE
- (21) BADALG Hatalı algoritma -> OT_ERROR_SECURITY
- (22) BADTRUN Hatalı kısaltma -> OT_ERROR_PARSE
- Diğer yanıt kodları -> OT_ERROR_FAILED
Aşağıdaki hatalar da olasıdır:
- OT_ERROR_RESPONSE_TIMEOUT : Sunucudan yanıt beklenirken zaman aşımına uğradı (istemci yeniden denemeye devam edecek).
- OT_ERROR_INVALID_ARGS : Sağlanan hizmet yapısı geçersiz (ör. hatalı hizmet adı veya
otDnsTxtEntry
). - OT_ERROR_NO_BUFS : Güncelleme mesajını hazırlamak veya göndermek için yetersiz arabellek.
Herhangi bir hata olması durumunda istemcinin işleme devam ettiğini unutmayın. Yani, biraz bekleme süresi geçtikten sonra SRP güncelleme mesajını hazırlar ve sunucuya iletir. Yeniden deneme bekleme aralığı minimum değerden başlar ve her hata için maksimum değere kadar büyüme faktörü tarafından artar (daha fazla ayrıntı için lütfen OPENTHREAD_CONFIG_SRP_CLIENT_MIN_RETRY_WAIT_INTERVAL
yapılandırma parametresine ve ilgili parametrelere bakın).
Ayrıntılar | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametreler |
|
otSrpClientHostInfo
struct otSrpClientHostInfo otSrpClientHostInfo
SRP istemcisi ana makine bilgisini temsil eder.
otSrpClientService
struct otSrpClientService otSrpClientService
Bir SRP müşteri hizmetini temsil eder.
Adların ve TXT kaydı girişlerinin dize arabellekleri dahil olmak üzere bu yapıdaki değerler, bu yapının bir örneği otSrpClientAddService()
veya otSrpClientRemoveService()
üzerinden OpenThread'e geçirildikten sonra SORUNMALIDIR ve sabit kalmalıdır.
mState
, mData
, mNext
alanları yalnızca OT Core tarafından kullanılır/yönetilir. otSrpClientAddService()
veya otSrpClientRemoveService()
ya da diğer işlevlerde bir otSrpClientService
örneği iletildiğinde bu değerlerin değerleri yoksayılır. Arayanın bu alanları ayarlaması gerekmez.
mLease
ve mKeyLease
alanları, bu hizmet için istenen kiralama ve anahtar kiralama aralıklarını belirtir. Sıfır değeri, aralığın belirtilmediğini gösterir. Ardından bu hizmet için otSrpClientGetLeaseInterval()
ve otSrpClientGetKeyLeaseInterval()
tarihleri arasındaki varsayılan kiralama veya anahtar kiralama aralıkları kullanılır. Anahtar kiralama aralığı (açıkça ayarlanmış veya varsayılan olarak belirlenmiş) bir hizmetin kiralama aralığından daha kısaysa SRP istemcisi, anahtar kiralama aralığı değerini de yeniden kullanır. Örneğin, mLease
hizmette açıkça 2 gün, mKeyLease
ise sıfır olarak ve varsayılan anahtar kiralama 1 gün olarak ayarlanmışsa bu hizmeti kaydederken bu hizmet için istenen anahtar kiralama işlemi de 2 gün olarak ayarlanır.
otSrpServerAddressMode
enum otSrpServerAddressMode otSrpServerAddressMode
SRP sunucusu tarafından kullanılan adres modunu temsil eder.
Adres modu, adresin ve bağlantı noktası numarasının SRP sunucusu tarafından nasıl belirlendiğini ve bu bilginin Thread Network Data'da nasıl yayınlanacağını belirtir.
otSrpServerHost
struct otSrpServerHost otSrpServerHost
Bu opak tür, bir SRP hizmet ana makinesini temsil eder.
otSrpServerLeaseConfig
struct otSrpServerLeaseConfig otSrpServerLeaseConfig
SRP sunucusu LEASE ve KEY-LEASE yapılandırmalarını içerir.
otSrpServerLeaseInfo
struct otSrpServerLeaseInfo otSrpServerLeaseInfo
Bir ana makinenin/hizmetin SRP sunucu kiralama bilgilerini içerir.
otSrpServerResponseCounters
struct otSrpServerResponseCounters otSrpServerResponseCounters
SRP sunucu yanıtlarının istatistiklerini içerir.
otSrpServerService
struct otSrpServerService otSrpServerService
Bu opak tür bir SRP hizmetini temsil eder.
otSrpServerServiceUpdateHandler
void(* otSrpServerServiceUpdateHandler)(otSrpServerServiceUpdateId aId, const otSrpServerHost *aHost, uint32_t aTimeout, void *aContext)
SRP hizmet güncellemelerini yönetir.
Bir SRP ana makinesinin ve muhtemelen SRP hizmetlerinin güncellenmekte olduğunu bildirmek için SRP sunucusu tarafından çağrılır. İşleyici, otSrpServerHandleServiceUpdateResultResult öğesini çağırarak sonucu geri verene veya aTimeout
tarihinden sonra zaman aşımına uğrayana kadar SRP güncellemelerinin kaydedilmemesi önemlidir.
Bir SRP hizmet gözlemcisi, güncelleme etkinliklerini aldıktan hemen sonra otSrpServerHandleServiceUpdateResultResult öğesini her zaman OT_ERROR_NONE hata koduyla çağırmalıdır.
Daha genel olan bir işleyici, SRP ana makinesi/hizmetleri üzerinde doğrulamalar gerçekleştirebilir ve herhangi bir doğrulama başarısız olursa SRP güncellemelerini reddeder. Örneğin, bir Reklam Proxy'si, çoklu yayın özellikli bir bağlantıda ana makineyi ve hizmetleri tanıtmalı (veya kaldırmalıdır) ve herhangi bir hata oluşursa belirli bir hata kodu döndürür.
Ayrıntılar | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parametreler |
|
otSrpServerSetServiceUpdateHandler
otSrpServerHandleServiceUpdateResult
otSrpServerServiceUpdateId
uint32_t otSrpServerServiceUpdateId
SRP hizmet güncellemesi işleminin SRP sunucusundaki kimliği.
otSrpServerTtlConfig
struct otSrpServerTtlConfig otSrpServerTtlConfig
SRP sunucusu TTL yapılandırmalarını içerir.
İşlevler
otSrpClientAddService
otError otSrpClientAddService( otInstance *aInstance, otSrpClientService *aService )
Sunucuya kaydedilecek bir hizmet ekler.
Bu işleve yapılan başarılı bir çağrıdan sonra, SRP sunucusuna hizmet ekleme/kaydın durumunu bildirmek için otSrpClientCallback
çağrılacaktır.
aService
tarafından işaret edilen otSrpClientService
örneği, bu işlevden (OT_ERROR_NONE
ile) dönüldükten sonra değişmeden devam etmelidir. OpenThread, işaretçiyi hizmet örneğine kaydeder.
otSrpClientService
örneği artık OpenThread tarafından takip edilmez ve yalnızca şu durumlarda geri alınabilir:
otSrpClientRemoveService()
numarasına yapılan bir çağrıyla açık bir şekilde kaldırılır veya hizmetin kaldırıldığını belirten birotSrpClientRemoveHostAndServices() and only after the
otSrpClientCallback` çağrısı yapılarak diğer hizmetlerle birlikte kaldırılır. Ya da- Ana makineyi ve ilgili tüm hizmetleri hemen kaldıran bir
otSrpClientClearHostAndServices()
çağrısı.
Ayrıntılar | |||||||
---|---|---|---|---|---|---|---|
Parametreler |
|
||||||
Döndürülen Değerler |
|
otSrpClientBuffersAllocateService
otSrpClientBuffersServiceEntry * otSrpClientBuffersAllocateService( otInstance *aInstance )
Havuzdan yeni bir hizmet girişi ayırır.
Döndürülen hizmet girişi örneği aşağıdaki gibi başlatılır:
mService.mName
,otSrpClientBuffersGetServiceEntryServiceNameString()
işlevi kullanılarak alınabilecek ayrılmış bir dize arabelleğine işaret eder.mService.mInstanceName
,otSrpClientBuffersGetServiceEntryInstanceNameString()
işlevi kullanılarak alınabilecek ayrılmış bir dize arabelleğine işaret eder.mService.mSubTypeLabels
,otSrpClientBuffersGetSubTypeLabelsArray()
öğesinden döndürülen bir diziyi işaret eder.mService.mTxtEntries
,mTxtEntry
değerini gösterecek.mService.mNumTxtEntries
bir olarak ayarlanacak.- Diğer
mService
alanları (bağlantı noktası, öncelik, ağırlık) sıfır olarak ayarlanır. mTxtEntry.mKey
, NULL olarak ayarlanmış (değer zaten kodlanmış olarak kabul edilir).mTxtEntry.mValue
,otSrpClientBuffersGetServiceEntryTxtBuffer()
işlevi kullanılarak alınabilecek ayrılmış bir arabelleği gösterir.mTxtEntry.mValueLength
sıfır olarak ayarlandı.- İlgili tüm veri/dize arabellekleri ve dizilerin tamamı temizlenir.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
Havuzda daha fazla giriş yoksa yeni tahsis edilen hizmet girişine veya NULL değerine işaret eder.
|
otSrpClientBuffersFreeAllServices
void otSrpClientBuffersFreeAllServices( otInstance *aInstance )
Önceden ayrılmış tüm hizmet girişlerini serbest bırakır.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
otSrpClientBuffersFreeService
void otSrpClientBuffersFreeService( otInstance *aInstance, otSrpClientBuffersServiceEntry *aService )
Önceden ayrılmış bir hizmet girişini serbest bırakır.
aService
, daha önce otSrpClientBuffersAllocateService()
kullanılarak tahsis edilmiş ve henüz serbest bırakılmamış olmalıdır. Aksi takdirde, bu işlevin davranışı tanımsız kalır.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
otSrpClientBuffersGetHostAddressesArray
otIp6Address * otSrpClientBuffersGetHostAddressesArray( otInstance *aInstance, uint8_t *aArrayLength )
SRP istemci ana makine adres listesi olarak kullanılacak IPv6 adresi girişleri dizisini alır.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
İadeler |
otIp6Address girişli bir diziye işaret eden (aArrayLength içinde giriş sayısı döndürülür). |
otSrpClientBuffersGetHostNameString
char * otSrpClientBuffersGetHostNameString( otInstance *aInstance, uint16_t *aSize )
SRP istemci ana makine adı için kullanılacak dize arabelleğini alır.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
İadeler |
SRP istemci ana makine adı için kullanılacak karakter arabelleğine işaret eden bir işaretçi.
|
otSrpClientBuffersGetServiceEntryInstanceNameString
char * otSrpClientBuffersGetServiceEntryInstanceNameString( otSrpClientBuffersServiceEntry *aEntry, uint16_t *aSize )
Bir hizmet girişinden hizmet örneği adı için dize arabelleğini alır.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
İadeler |
Dize arabelleğine işaret eden bir işaretçi.
|
otSrpClientBuffersGetServiceEntryServiceNameString
char * otSrpClientBuffersGetServiceEntryServiceNameString( otSrpClientBuffersServiceEntry *aEntry, uint16_t *aSize )
Bir hizmet girişinden hizmet adı için dize arabelleğini alır.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
İadeler |
Dize arabelleğine işaret eden bir işaretçi.
|
otSrpClientBuffersGetServiceEntryTxtBuffer
uint8_t * otSrpClientBuffersGetServiceEntryTxtBuffer( otSrpClientBuffersServiceEntry *aEntry, uint16_t *aSize )
Bir hizmet girişinden TXT kaydı arabelleğini alır.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
İadeler |
Tamponun işaretçisi.
|
otSrpClientBuffersGetSubTypeLabelsArray
const char ** otSrpClientBuffersGetSubTypeLabelsArray( otSrpClientBuffersServiceEntry *aEntry, uint16_t *aArrayLength )
Hizmet girişinden hizmet alt türü etiketleri için diziyi alır.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
İadeler |
Dizinin işaretçisi.
|
otSrpClientClearHostAndServices
void otSrpClientClearHostAndServices( otInstance *aInstance )
Tüm ana makine bilgilerini ve tüm hizmetleri temizler.
Tüm bilgileri kaldırmak için sunucuya bir güncelleme mesajı gönderen otSrpClientRemoveHostAndServices()
işlevinin aksine bu işlev, sunucuyla herhangi bir etkileşim kurmadan tüm bilgileri hemen temizler.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
otSrpClientClearService
otError otSrpClientClearService( otInstance *aInstance, otSrpClientService *aService )
Bir hizmeti temizleyerek istemci hizmeti listesinden hemen kaldırır.
Hizmeti kaldırmak için sunucuya güncelleme mesajı gönderen otSrpClientRemoveService()
işlevinin aksine bu işlev, sunucuyla herhangi bir etkileşime gerek kalmadan hizmeti istemcinin hizmet listesinden temizler. Bu işleve yapılan başarılı bir çağrıda otSrpClientCallback
ÇALINMAZ ve aService
girişi arayan tarafından hemen geri alınabilir ve yeniden kullanılabilir.
Mevcut bir hizmetteki bazı parametreleri güncellemek için sonraki otSrpClientAddService()
çağrısıyla birlikte kullanılabilir (aynı aService
girişini aynı hizmet ve örnek adlarıyla yeniden kullanma olabilir).
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
Döndürülen Değerler |
|
otSrpClientDisableAutoStartMode
void otSrpClientDisableAutoStartMode( otInstance *aInstance )
Otomatik başlatma modunu devre dışı bırakır.
Bu özellik yalnızca otomatik başlatma özelliği OPENTHREAD_CONFIG_SRP_CLIENT_AUTO_START_API_ENABLE
etkinleştirildiğinde kullanılabilir.
Otomatik başlatma modunun devre dışı bırakılması, zaten çalışıyorsa istemciyi durdurmaz ancak istemci, seçilen SRP sunucusunun hâlâ mevcut olduğunu doğrulamak için İş Parçacığı Ağ Verilerini izlemeyi durdurur.
otSrpClientStop()
numaralı telefona yapılan bir çağrının da otomatik başlatma modunu devre dışı bırakacağını unutmayın.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
otSrpClientEnableAutoHostAddress
otError otSrpClientEnableAutoHostAddress( otInstance *aInstance )
Otomatik ana makine adresi modunu etkinleştirir.
Etkinleştirildiğinde, ana makine IPv6 adresleri, tüm yerel bağlantı ve örgü-yerel adresleri hariç olmak üzere, Thread netif'te tercih edilen tüm tekli yayın adresleri kullanılarak SRP istemcisi tarafından otomatik olarak ayarlanır. Tercih edilen adres yoksa Örgü Yerel EID adresi eklenir. Thread netif'teki adresler güncellendiğinde veya mevcut adresler güncellendiğinde (yeni adresler eklendiğinde, mevcut adresler kaldırıldığında ya da tercih edilmedi olarak işaretlendiğinde) SRP istemcisi otomatik olarak yeniden kaydedilir.
Otomatik ana makine adresi modu, ana makine bilgilerinin kaldırıldığı durumlar dışında SRP istemcisinin başlatılmasından önce veya çalıştırılması sırasında etkinleştirilebilir (istemci, otSrpClientRemoveHostAndServices()
adresine yapılan bir çağrıdan gelen kaldırma isteğini işlemekle meşgul ve ana makine bilgileri hâlâ STATE_TO_REMOVE
veya STATE_REMOVING
durumundadır).
Otomatik ana makine adresi modu etkinleştirildikten sonra, ana makine adreslerini açıkça ayarlayan otSrpClientSetHostAddresses()
çağrısıyla devre dışı bırakılabilir.
Ayrıntılar | |||||
---|---|---|---|---|---|
Döndürülen Değerler |
|
otSrpClientEnableAutoStartMode
void otSrpClientEnableAutoStartMode( otInstance *aInstance, otSrpClientAutoStartCallback aCallback, void *aContext )
Otomatik başlatma modunu etkinleştirir.
Bu özellik yalnızca otomatik başlatma özelliği OPENTHREAD_CONFIG_SRP_CLIENT_AUTO_START_API_ENABLE
etkinleştirildiğinde kullanılabilir.
Yapılandırma seçeneği OPENTHREAD_CONFIG_SRP_CLIENT_AUTO_START_DEFAULT_MODE
, varsayılan otomatik başlatma modunu belirtir (OT yığınının başında etkin veya devre dışı olsun).
Otomatik başlatma etkinleştirildiğinde SRP istemcisi, SRP sunucularını keşfetmek ve tercih edilen sunucuyu seçmek için İş Parçacığı Ağ Verilerini izler ve bir SRP sunucusu algılandığında istemciyi otomatik olarak başlatıp durdurur.
SRP sunucusunun varlığını gösteren üç ağ verisi girişi kategorisi vardır. Aşağıdaki sırayla tercih edilirler:
1) Hizmet verilerine sunucu adresinin dahil edildiği tercih edilen tekli yayın girişleri. Birden çok seçenek varsa sayısal olarak en düşük IPv6 adresine sahip olan seçenek tercih edilir.
2) Sıra numarası içeren her noktaya yayın girişleri. RFC-1982'deki Seri Numarası Aritmetik mantığı tarafından belirtilen anlamda daha büyük bir sıra numarası daha yeni kabul edilir ve bu nedenle tercih edilir. İyi tanımlanmışsa (yani, sıralı sayı, diğer tüm sıralı sayılardan büyükse) seri numarası aritmetiği kullanan en büyük sıralı numara tercih edilir. İyi tanımlanmamışsa sayısal olarak en büyük sıralı numarası tercih edilir.
3) Sunucu adresi bilgilerinin sunucu verilerine dahil edildiği tek noktaya yayın girişleri. Birden çok seçenek varsa sayısal olarak en düşük IPv6 adresine sahip olan seçenek tercih edilir.
Ağ Verileri girişlerinde bir değişiklik olduğunda, istemci o anda seçili olan sunucunun Ağ Verilerinde hâlâ var olduğundan ve tercih edilen sunucu olup olmadığını kontrol eder. Aksi takdirde, istemci tercih edilen yeni sunucuya geçiş yapar veya sunucu yoksa durur.
SRP istemcisi otSrpClientStart()
için yapılan başarılı bir çağrıyla açıkça başlatıldığında, otomatik başlatma modunun durumundan ve İş Parçacığı Ağı Verilerinde aynı SRP sunucu adresinin bulunup bulunmamasından bağımsız olarak otSrpClientStart()
içindeki belirtilen SRP sunucu adresi kullanılmaya devam edecektir. Bu durumda, yalnızca açık bir otSrpClientStop()
çağrısı istemciyi durdurur.
Ayrıntılar | |||||||
---|---|---|---|---|---|---|---|
Parametreler |
|
otSrpClientGetDomainName
const char * otSrpClientGetDomainName( otInstance *aInstance )
SRP istemcisi tarafından kullanılan alan adını alır.
OPENTHREAD_CONFIG_SRP_CLIENT_DOMAIN_NAME_API_ENABLE
politikasının etkinleştirilmesini gerektirir.
Alan adı ayarlanmazsa "default.service.arpa" kullanılır.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
Alan adı dizesi.
|
otSrpClientGetHostInfo
const otSrpClientHostInfo * otSrpClientGetHostInfo( otInstance *aInstance )
Ana makine bilgilerini alır.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
Ana makine bilgi yapısının işaretçisi.
|
otSrpClientGetKeyLeaseInterval
uint32_t otSrpClientGetKeyLeaseInterval( otInstance *aInstance )
SRP güncelleme isteklerinde kullanılan varsayılan anahtar kiralama aralığını alır.
Varsayılan aralık yalnızca mKeyLease
değeri sıfır olarak ayarlanmış otSrpClientService
örnekleri için kullanılır.
Bunun SRP istemcisi tarafından istenen kiralama süresi olduğunu unutmayın. Sunucu farklı bir kiralama aralığını kabul edebilir.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
Anahtar kiralama aralığı (saniye cinsinden).
|
otSrpClientGetLeaseInterval
uint32_t otSrpClientGetLeaseInterval( otInstance *aInstance )
SRP güncelleme isteklerinde kullanılan varsayılan kiralama aralığını alır.
Varsayılan aralık yalnızca mLease
değeri sıfır olarak ayarlanmış otSrpClientService
örnekleri için kullanılır.
Bunun SRP istemcisi tarafından istenen kiralama süresi olduğunu unutmayın. Sunucu farklı bir kiralama aralığını kabul edebilir.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
Kiralama aralığı (saniye cinsinden).
|
otSrpClientGetServerAddress
const otSockAddr * otSrpClientGetServerAddress( otInstance *aInstance )
SRP istemcisi tarafından kullanılan SRP sunucusunun yuva adresini (IPv6 adresi ve bağlantı noktası numarası) alır.
İstemci çalışmıyorsa adres belirtilmemiştir (tümü sıfır) ve bağlantı noktası numarası yoktur.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
SRP sunucusunun yuva adresine işaretçi (her zaman NULL değildir).
|
otSrpClientGetServices
const otSrpClientService * otSrpClientGetServices( otInstance *aInstance )
İstemci tarafından yönetilen hizmetlerin listesini alır.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
Tüm hizmetlerin bağlı listesinin başına işaretçi ya da liste boşsa NULL.
|
otSrpClientGetTtl
uint32_t otSrpClientGetTtl( otInstance *aInstance )
SRP güncelleme isteklerine dahil edilen her kayıttaki TTL değerini alır.
Bunun SRP istemcisi tarafından istenen TTL olduğunu unutmayın. Sunucu farklı bir TTL kabul edebilir.
Varsayılan olarak TTL, kiralama aralığına eşittir. otSrpClientSetTtl()
aracılığıyla 0 veya kiralama aralığından daha büyük bir değer iletilmesi, TTL'nin de kiralama aralığına eşit olmasına neden olur.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
TTL (saniye cinsinden).
|
otSrpClientIsAutoStartModeEnabled
bool otSrpClientIsAutoStartModeEnabled( otInstance *aInstance )
Otomatik başlatma modunun mevcut durumunu belirtir (etkin veya devre dışı).
Bu özellik yalnızca otomatik başlatma özelliği OPENTHREAD_CONFIG_SRP_CLIENT_AUTO_START_API_ENABLE
etkinleştirildiğinde kullanılabilir.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
Otomatik başlatma modu etkinse DOĞRU, aksi takdirde YANLIŞ olur.
|
otSrpClientIsRunning
bool otSrpClientIsRunning( otInstance *aInstance )
SRP istemcisinin çalışıp çalışmadığını belirtir.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
SRP istemcisi çalışıyorsa DOĞRU, değilse YANLIŞ.
|
otSrpClientIsServiceKeyRecordEnabled
bool otSrpClientIsServiceKeyRecordEnabled( otInstance *aInstance )
"Hizmet anahtarı kaydı dahil etme" modunun etkin mi yoksa devre dışı mı olduğunu belirtir.
OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE
yapılandırması etkinleştirildiğinde kullanılabilir.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
"Hizmet anahtarı kaydı dahil etme" modu etkinse DOĞRU, aksi takdirde YANLIŞ olur.
|
otSrpClientItemStateToString
const char * otSrpClientItemStateToString( otSrpClientItemState aItemState )
Bir otSrpClientItemState
dizesini bir dizeye dönüştürür.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
aItemState öğesinin dize gösterimi. |
otSrpClientRemoveHostAndServices
otError otSrpClientRemoveHostAndServices( otInstance *aInstance, bool aRemoveKeyLease, bool aSendUnregToServer )
Ana makine bilgilerinin ve tüm hizmetlerin kaldırma işlemini başlatır.
Bu işlevden döndükten sonra, SRP sunucusuna kaldırma isteğinin durumunu bildirmek için otSrpClientCallback
çağrılır.
Ana makine bilgisi sunucudan kalıcı olarak kaldırılacaksa aRemoveKeyLease
, true
olarak ayarlanmalıdır. Bu işlem, sunucudaki ana makineyle ilişkili anahtar kiralama işlemini kaldırır. Aksi takdirde, anahtar kiralama kaydı daha önce olduğu gibi saklanır. Bu sayede, istemci tekrar hizmetlerini sağlayıp kaydedebilir. Bu durumda, sunucu ana makine adını yedek olarak muhafaza eder.
aSendUnregToServer
, ana makine bilgisi henüz sunucuya kaydedilmediğinde davranışı belirler. aSendUnregToServer
, false
olarak ayarlanırsa (varsayılan/beklenen değer budur) SRP istemcisi, sunucuya güncelleme mesajı göndermeden ana makine bilgilerini ve hizmetlerini hemen kaldırır (Henüz hiçbir şey kayıtlı değilse sunucunun güncellenmesine gerek yoktur). aSendUnregToServer
, true
değerine ayarlanırsa SRP istemcisi sunucuya bir güncelleme mesajı gönderir. Ana makine bilgisi kayıtlıysa aSendUnregToServer
değerinin önemli olmadığını ve SRP istemcisinin sunucuya her zaman tüm bilgilerin kaldırılmasını isteyen bir güncelleme mesajı göndereceğini unutmayın.
aSendUnregToServer
cihazının kullanışlı olabileceği bir durum da cihazın sıfırlanması/yeniden başlatılmasıdır, arayan kişi sunucuda daha önce kaydedilmiş hizmetleri kaldırmak isteyebilir. Bu durumda arayan, otSrpClientSetHostName()
ve ardından true
olarak aSendUnregToServer
ile otSrpClientRemoveHostAndServices()
isteğinde bulunabilir.
Ayrıntılar | |||||||
---|---|---|---|---|---|---|---|
Parametreler |
|
||||||
Döndürülen Değerler |
|
otSrpClientRemoveService
otError otSrpClientRemoveService( otInstance *aInstance, otSrpClientService *aService )
Bir hizmetin sunucu kaydının silinmesini ister.
Bu işleve yapılan başarılı bir çağrıdan sonra, SRP sunucusuna kaldırma isteğinin durumunu bildirmek için otSrpClientCallback
çağrılır.
aService
tarafından işaret edilen otSrpClientService
örneği, bu işlevden (OT_ERROR_NONE
ile) dönüldükten sonra değişmeden kalmalıdır. OpenThread, kaldırma işlemi sırasında hizmet örneğini tutar. Yalnızca otSrpClientCallback
çağrıldıktan sonra hizmet örneğinin SRP istemci hizmetleri listesinden çıkarıldığını ve serbest bırakılıp yeniden kullanılabileceğini belirtin.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
Döndürülen Değerler |
|
otSrpClientSetCallback
void otSrpClientSetCallback( otInstance *aInstance, otSrpClientCallback aCallback, void *aContext )
Geri çağırmayı, arayana SRP istemcisinden kaynaklanan etkinlikler/değişiklikler hakkında bilgi verecek şekilde ayarlar.
SRP istemcisi, tek bir geri çağırmanın kaydedilmesine olanak tanır. Dolayısıyla bu işleve yapılan art arda yapılan çağrılar, önceden ayarlanmış geri çağırma işlevlerinin üzerine yazılır.
Ayrıntılar | |||||||
---|---|---|---|---|---|---|---|
Parametreler |
|
otSrpClientSetDomainName
otError otSrpClientSetDomainName( otInstance *aInstance, const char *aName )
SRP istemcisi tarafından kullanılacak alan adını ayarlar.
OPENTHREAD_CONFIG_SRP_CLIENT_DOMAIN_NAME_API_ENABLE
politikasının etkinleştirilmesini gerektirir.
Ayarlanmazsa "default.service.arpa" kullanılır.
aName
tarafından işaret edilen ad dizesi arabelleğinin devam etmesi ve bu işlevden döndürüldükten sonra değişmemesi ZORUNLUDUR. OpenThread, dizenin işaretçisini tutar.
Alan adı, istemci başlatılmadan önce veya başlatıldıktan sonra ana makine bilgileri sunucuya kaydedilmeden önce ayarlanabilir (barındırıcı bilgileri STATE_TO_ADD
veya STATE_TO_REMOVE
içinde olmalıdır).
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
Döndürülen Değerler |
|
otSrpClientSetHostAddresses
otError otSrpClientSetHostAddresses( otInstance *aInstance, const otIp6Address *aIp6Addresses, uint8_t aNumAddresses )
Ana makine IPv6 adresinin listesini ayarlar/günceller.
Ana makine bilgisi kaldırılırken (istemci, otSrpClientRemoveHostAndServices()
ile yapılan önceki bir aramadan gelen kaldırma isteğini işleme aldığı ve ana makine bilgilerinin hâlâ STATE_TO_REMOVE
ya da STATE_REMOVING
durumunda olduğu durumlar hariç) SRP istemcisinin başlatılmasından önce veya çalıştırılmasından önce veya SRP istemcisinin çalışması sırasında değiştirilebilir (ör. daha önce kaydedilmiş bir ana makine adresini eklemek/kaldırmak veya değiştirmek için).
aIp6Addresses
tarafından işaret edilen ana makine IPv6 adres dizisi, bu işlevden (OT_ERROR_NONE
ile) döndükten sonra değişmeden devam etmeli ve değişmemelidir. OpenThread, işaretçiyi diziye kaydeder.
Bu işleve yapılan başarılı bir çağrıdan sonra, SRP sunucusuyla adres kaydının durumunu bildirmek için otSrpClientCallback
çağrılır.
Bu işlev çağrıldığında, otomatik ana makine adresi modu önceden otSrpClientEnableAutoHostAddress()
için yapılan başarılı bir çağrıdan etkinleştirilmişse devre dışı bırakılır.
Ayrıntılar | |||||||
---|---|---|---|---|---|---|---|
Parametreler |
|
||||||
Döndürülen Değerler |
|
otSrpClientSetHostName
otError otSrpClientSetHostName( otInstance *aInstance, const char *aName )
Ana makine adı etiketini ayarlar.
Bu işleve yapılan başarılı bir çağrıdan sonra, SRP sunucusuna ana makine bilgi kaydının durumunu bildirmek için otSrpClientCallback
çağrılır.
aName
tarafından işaret edilen ad dizesi arabelleğinin devam etmesi ve bu işlevden döndürüldükten sonra değişmemesi ZORUNLUDUR. OpenThread, dizenin işaretçisini tutar.
Ana makine adı, istemci başlatılmadan önce veya başlatıldıktan sonra ana makine bilgisi sunucuya kaydedilmeden önce ayarlanabilir (ana makine bilgisi STATE_TO_ADD
veya STATE_REMOVED
içinde olmalıdır).
Ayrıntılar | |||||||
---|---|---|---|---|---|---|---|
Parametreler |
|
||||||
Döndürülen Değerler |
|
otSrpClientSetKeyLeaseInterval
void otSrpClientSetKeyLeaseInterval( otInstance *aInstance, uint32_t aInterval )
SRP güncelleme isteklerinde kullanılan varsayılan anahtar kiralama aralığını ayarlar.
Varsayılan aralık yalnızca mKeyLease
değeri sıfır olarak ayarlanmış otSrpClientService
örnekleri için kullanılır.
Kiralama aralığını değiştirmek, zaten kayıtlı hizmetlerin/barındırıcı bilgilerinin kabul edilen kiralama aralığını etkilemez. Yalnızca gelecekteki SRP güncelleme mesajlarını (yeni hizmetlerin eklenmesi ve/veya mevcut hizmetlerin yenilenmesi) etkiler.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
otSrpClientSetLeaseInterval
void otSrpClientSetLeaseInterval( otInstance *aInstance, uint32_t aInterval )
SRP güncelleme isteklerinde kullanılan varsayılan kiralama aralığını ayarlar.
Varsayılan aralık yalnızca mLease
değeri sıfır olarak ayarlanmış otSrpClientService
örnekleri için kullanılır.
Kiralama aralığını değiştirmek, zaten kayıtlı hizmetlerin/barındırıcı bilgilerinin kabul edilen kiralama aralığını etkilemez. Bu değişiklik yalnızca gelecekteki SRP güncelleme mesajlarını (yeni hizmetlerin eklenmesi ve/veya mevcut hizmetlerin yenilenmesi) etkiler.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
otSrpClientSetServiceKeyRecordEnabled
void otSrpClientSetServiceKeyRecordEnabled( otInstance *aInstance, bool aEnabled )
"Hizmet anahtarı kaydı dahil etme" modunu etkinleştirir/devre dışı bırakır.
Etkinleştirildiğinde SRP istemcisi, gönderdiği SRP güncelleme mesajlarındaki Hizmet Açıklaması Talimatları'na ANAHTAR kaydını ekler.
OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE
yapılandırması etkinleştirildiğinde kullanılabilir.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
otSrpClientSetTtl
void otSrpClientSetTtl( otInstance *aInstance, uint32_t aTtl )
SRP güncelleme isteklerine dahil edilen her kayıtta TTL değerini belirler.
TTL'nin değiştirilmesi, halihazırda kayıtlı hizmetlerin/ana makine bilgilerinin TTL'sini etkilemez. Yalnızca gelecekteki SRP güncelleme iletilerini etkiler (yani, yeni hizmetlerin eklenmesi ve/veya mevcut hizmetlerin yenilenmesi).
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
otSrpClientStart
otError otSrpClientStart( otInstance *aInstance, const otSockAddr *aServerSockAddr )
SRP istemci işlemini başlatır.
SRP istemcisi, "SRP Güncellemesi" mesajını hazırlayıp SRP sunucusuna gönderir:
- SRP istemcisi başlatıldı -
otSrpClientStart()
çağrıldı. - Ana makine adı belirlendi -
otSrpClientSetHostName()
çağrıldı. - En az bir ana makine IPv6 adresi ayarlandı -
otSrpClientSetHostName()
çağrıldı. - En az bir hizmet eklendi -
otSrpClientAddService()
çağrıldı.
Bu işlevlerin hangi sırayla çağrıldığı önemli değildir. Tüm koşullar karşılandığında SRP istemcisi, bir "SRP Güncellemesi" mesajı hazırlayıp sunucuya göndermeden önce kısa bir gecikme bekler. Bu gecikme, kullanıcının ilk SRP Güncellemesi mesajı gönderilmeden önce birden çok hizmet ve/veya IPv6 adresi eklemesine olanak sağlar (tüm bilgileri içeren tek bir SRP Güncellemesi gönderilmesi gerekir). OPENTHREAD_CONFIG_SRP_CLIENT_UPDATE_TX_DELAY
yapılandırması, gecikme aralığını belirtir.
Ayrıntılar | |||||||
---|---|---|---|---|---|---|---|
Parametreler |
|
||||||
Döndürülen Değerler |
|
otSrpClientStop
void otSrpClientStop( otInstance *aInstance )
SRP istemci işlemini durdurur.
SRP sunucusuyla gerçekleştirilecek diğer etkileşimleri durdurur. Bu işlemin ana makine bilgilerini ve/veya hizmet listesini kaldırmadığını ya da temizlemediğini unutmayın. İstemci başlatıldıktan (yeniden) sonra tekrar eklenecek/kaldırılacak tüm hizmetleri işaretler.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
otSrpServerGetAddressMode
otSrpServerAddressMode otSrpServerGetAddressMode( otInstance *aInstance )
SRP sunucusu tarafından kullanılan adres modunu döndürür.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
SRP sunucusunun adres modu.
|
otSrpServerGetAnycastModeSequenceNumber
uint8_t otSrpServerGetAnycastModeSequenceNumber( otInstance *aInstance )
Her noktaya yayın adres moduyla kullanılan sıra numarasını döndürür.
Sıra numarası, Ağ Verilerinde yayınlanan "DNS/SRP Hizmeti Anycast Adresi" girişinde yer alır.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
Her noktaya yayın sıra numarası.
|
otSrpServerGetDomain
const char * otSrpServerGetDomain( otInstance *aInstance )
SRP sunucusu tarafından yetkilendirilen alanı döndürür.
Alan, SetDomain tarafından ayarlanmazsa "default.service.arpa." döndürülür. Alan adı buz işareti olmadan ayarlanmış olsa bile sonda bir nokta her zaman eklenir.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
Noktayla birleştirilmiş alan adı dizesine işaret eden bir işaretçi.
|
otSrpServerGetLeaseConfig
void otSrpServerGetLeaseConfig( otInstance *aInstance, otSrpServerLeaseConfig *aLeaseConfig )
SRP sunucusu LEASE ve KEY-LEASE yapılandırmalarını döndürür.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
otSrpServerGetNextHost
const otSrpServerHost * otSrpServerGetNextHost( otInstance *aInstance, const otSrpServerHost *aHost )
SRP sunucusunda sonraki kayıtlı ana makineyi döndürür.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
İadeler |
Kayıtlı barındırıcının işaretçisi. Başka ana makine bulunamazsa NULL değerine sahiptir.
|
otSrpServerGetPort
uint16_t otSrpServerGetPort( otInstance *aInstance )
SRP sunucusunun dinlediği bağlantı noktasını döndürür.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
SRP sunucusunun bağlantı noktası. Sunucu çalışmıyorsa 0 değerini döndürür.
|
otSrpServerGetResponseCounters
const otSrpServerResponseCounters * otSrpServerGetResponseCounters( otInstance *aInstance )
SRP sunucusunun yanıt sayaçlarını döndürür.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
SRP sunucusunun yanıt sayaçlarına işaretçi.
|
otSrpServerGetState
otSrpServerState otSrpServerGetState( otInstance *aInstance )
SRP sunucusunun durumunu döndürür.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
SRP sunucusunun mevcut durumu.
|
otSrpServerGetTtlConfig
void otSrpServerGetTtlConfig( otInstance *aInstance, otSrpServerTtlConfig *aTtlConfig )
SRP sunucusu TTL yapılandırmasını döndürür.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
otSrpServerHandleServiceUpdateResult
void otSrpServerHandleServiceUpdateResult( otInstance *aInstance, otSrpServerServiceUpdateId aId, otError aError )
SRP güncellemesi işlemenin sonucunu SRP sunucusuna bildirir.
Hizmet Güncelleme İşleyicisi, SRP güncellemesi işlemesinin sonucunu döndürmek için bu işlevi çağırmalıdır.
Ayrıntılar | |||||||
---|---|---|---|---|---|---|---|
Parametreler |
|
otSrpServerHostGetAddresses
const otIp6Address * otSrpServerHostGetAddresses( const otSrpServerHost *aHost, uint8_t *aAddressesNum )
Belirli bir ana bilgisayarın adreslerini döndürür.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
İadeler |
IPv6 adresi dizisinin işaretçisi.
|
otSrpServerHostGetFullName
const char * otSrpServerHostGetFullName( const otSrpServerHost *aHost )
Ana makinenin tam adını döndürür.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
Boş sonlandırılmış ana makine adı dizesine işaret eden bir işarettir.
|
otSrpServerHostGetLeaseInfo
void otSrpServerHostGetLeaseInfo( const otSrpServerHost *aHost, otSrpServerLeaseInfo *aLeaseInfo )
Belirli bir ana makinenin LEASE ve KEY-LEASE bilgilerini döndürür.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
otSrpServerHostGetNextService
const otSrpServerService * otSrpServerHostGetNextService( const otSrpServerHost *aHost, const otSrpServerService *aService )
Belirli bir ana makinenin sonraki hizmetini döndürür.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
İadeler |
Bir sonraki hizmete işaretçi. Başka hizmet yoksa NULL.
|
otSrpServerHostIsDeleted
bool otSrpServerHostIsDeleted( const otSrpServerHost *aHost )
SRP hizmet ana makinesinin silinip silinmediğini bildirir.
SRP hizmet ana makinesi silinebilir ancak adlarını gelecekte kullanılmak üzere korur. Bu durumda ana makine örneği, SRP sunucusundan/kayıt defterinden kaldırılmaz.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
Ana makine silinmişse DOĞRU, silinmişse YANLIŞ.
|
otSrpServerHostMatchesFullName
bool otSrpServerHostMatchesFullName( const otSrpServerHost *aHost, const char *aFullName )
Ana makinenin belirli bir ana makine adıyla eşleşip eşleşmediğini belirtir.
DNS adı eşleşmeleri, büyük/küçük harfe duyarlı olmayan bir dize karşılaştırması (ör. "Abc" ve "aBc" aynı kabul edilir).
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
Döndürülen Değerler |
|
otSrpServerIsAutoEnableMode
bool otSrpServerIsAutoEnableMode( otInstance *aInstance )
Otomatik etkinleştirme modunun etkin mi yoksa devre dışı mı olduğunu belirtir.
OPENTHREAD_CONFIG_BORDER_ROUTING_ENABLE
özelliği gerektirir.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
Döndürülen Değerler |
|
otSrpServerParseSubTypeServiceName
otError otSrpServerParseSubTypeServiceName( const char *aSubTypeServiceName, char *aLabel, uint8_t aLabelSize )
Alt tür hizmet adını (tam ad) ayrıştırır ve alt tür etiketini ayıklar.
Alt tür bir hizmetin tam hizmet adı şu şekildedir: "
Ayrıntılar | |||||||
---|---|---|---|---|---|---|---|
Parametreler |
|
||||||
Döndürülen Değerler |
|
otSrpServerServiceGetHost
const otSrpServerHost * otSrpServerServiceGetHost( const otSrpServerService *aService )
Hizmet örneğinin bulunduğu ana makineyi döndürür.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
Ana makine örneğinin işaretçisi.
|
otSrpServerServiceGetInstanceLabel
const char * otSrpServerServiceGetInstanceLabel( const otSrpServerService *aService )
Hizmetin hizmet örneği etiketini (örnek adındaki ilk etiket) döndürür.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
Boş sonlandırılmış hizmet örneği etiket dizesinin işaretçisi.
|
otSrpServerServiceGetInstanceName
const char * otSrpServerServiceGetInstanceName( const otSrpServerService *aService )
Hizmetin tam hizmet örneği adını döndürür.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
Boş sonlandırılmış hizmet örneği adı dizesine işaret eden bir işarettir.
|
otSrpServerServiceGetLeaseInfo
void otSrpServerServiceGetLeaseInfo( const otSrpServerService *aService, otSrpServerLeaseInfo *aLeaseInfo )
Belirli bir hizmetin LEASE ve KEY-LEASE bilgilerini döndürür.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
otSrpServerServiceGetNumberOfSubTypes
uint16_t otSrpServerServiceGetNumberOfSubTypes( const otSrpServerService *aService )
Hizmetin alt türlerinin sayısını alır.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
aService alt türlerinin sayısı. |
otSrpServerServiceGetPort
uint16_t otSrpServerServiceGetPort( const otSrpServerService *aService )
Hizmet örneğinin bağlantı noktasını döndürür.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
Hizmetin bağlantı noktası.
|
otSrpServerServiceGetPriority
uint16_t otSrpServerServiceGetPriority( const otSrpServerService *aService )
Hizmet örneğinin önceliğini döndürür.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
Hizmetin önceliği.
|
otSrpServerServiceGetServiceName
const char * otSrpServerServiceGetServiceName( const otSrpServerService *aService )
Hizmetin tam hizmet adını döndürür.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
Boş sonlandırılmış hizmet adı dizesine işaret eden bir işarettir.
|
otSrpServerServiceGetSubTypeServiceNameAt
const char * otSrpServerServiceGetSubTypeServiceNameAt( const otSrpServerService *aService, uint16_t aIndex )
Belirli bir dizinde hizmetin alt türü hizmet adını (tam adı) alır.
Alt tür bir hizmetin tam hizmet adı şu şekildedir: "
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
İadeler |
aIndex konumundaki alt tür hizmet adına veya bu dizinde alt tür yoksa NULL için işaretçi. |
otSrpServerServiceGetTtl
uint32_t otSrpServerServiceGetTtl( const otSrpServerService *aService )
Hizmet örneğinin TTL'sini döndürür.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
Hizmet örneğinin TTL'si.
|
otSrpServerServiceGetTxtData
const uint8_t * otSrpServerServiceGetTxtData( const otSrpServerService *aService, uint16_t *aDataLength )
Hizmet örneğinin TXT kayıt verilerini döndürür.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
İadeler |
TXT kayıt verilerini içeren arabelleğin işaretçisi (TXT veri uzunluğu
aDataLength ürününde döndürülür). |
otSrpServerServiceGetWeight
uint16_t otSrpServerServiceGetWeight( const otSrpServerService *aService )
Hizmet örneğinin ağırlığını döndürür.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
Hizmetin ağırlığı.
|
otSrpServerServiceHasSubTypeServiceName
bool otSrpServerServiceHasSubTypeServiceName( const otSrpServerService *aService, const char *aSubTypeServiceName )
Hizmetin belirli bir alt türü olup olmadığını belirtir.
DNS adı eşleşmeleri, büyük/küçük harfe duyarlı olmayan bir dize karşılaştırması (ör. "Abc" ve "aBc" aynı kabul edilir).
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
Döndürülen Değerler |
|
otSrpServerServiceIsDeleted
bool otSrpServerServiceIsDeleted( const otSrpServerService *aService )
SRP hizmetinin silinip silinmediğini belirtir.
SRP hizmeti silinebilir ancak ileride kullanılmak üzere adını korur. Bu durumda hizmet örneği, SRP sunucusundan/kayıt defterinden kaldırılmaz. Ana makine silinirse tüm hizmetlerin de silineceği garanti edilir.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
||
İadeler |
Hizmet silinmişse DOĞRU, silinmişse YANLIŞ.
|
otSrpServerServiceMatchesInstanceName
bool otSrpServerServiceMatchesInstanceName( const otSrpServerService *aService, const char *aInstanceName )
Bu hizmetin belirli bir hizmet örneği adıyla eşleşip eşleşmediğini belirtir.
DNS adı eşleşmeleri, büyük/küçük harfe duyarlı olmayan bir dize karşılaştırması (ör. "Abc" ve "aBc" aynı kabul edilir).
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
Döndürülen Değerler |
|
otSrpServerServiceMatchesServiceName
bool otSrpServerServiceMatchesServiceName( const otSrpServerService *aService, const char *aServiceName )
Bu hizmetin belirli bir hizmet adıyla eşleşip eşleşmediğini belirtir.
DNS adı eşleşmeleri, büyük/küçük harfe duyarlı olmayan bir dize karşılaştırması (ör. "Abc" ve "aBc" aynı kabul edilir).
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
Döndürülen Değerler |
|
otSrpServerSetAddressMode
otError otSrpServerSetAddressMode( otInstance *aInstance, otSrpServerAddressMode aMode )
SRP sunucusu tarafından kullanılacak adres modunu ayarlar.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
Döndürülen Değerler |
|
otSrpServerSetAnycastModeSequenceNumber
otError otSrpServerSetAnycastModeSequenceNumber( otInstance *aInstance, uint8_t aSequenceNumber )
Her noktaya yayın adres moduyla kullanılan sıra numarasını ayarlar.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
Döndürülen Değerler |
|
otSrpServerSetAutoEnableMode
void otSrpServerSetAutoEnableMode( otInstance *aInstance, bool aEnabled )
SRP sunucusunda otomatik etkinleştirme modunu etkinleştirir/devre dışı bırakır.
OPENTHREAD_CONFIG_BORDER_ROUTING_ENABLE
özelliği gerektirir.
Bu mod etkinleştirildiğinde Sınır Yönlendirme Yöneticisi, SRP sunucusunun etkinleştirilip etkinleştirilmeyeceğini veya ne zaman devre dışı bırakılacağını kontrol eder. SRP sunucusu, Sınır Yönlendirme başlatıldığında/başlatıldığında otomatik olarak etkinleştirilir. Bu işlem, ilk ön ek ve rota yapılandırmalarıyla yapılır (OMR ve bağlantı içi ön ekler belirlendiğinde, altyapı tarafında yayınlanan Yönlendirici Reklamı mesajında tanıtılır ve Thread Network Data'da yayınlanır). BR durdurulduğunda/BR durdurulduğunda (ör. altyapı ağ arayüzü kapatılırsa veya BR ayrılırsa) SRP sunucusu otomatik olarak devre dışı bırakılır.
Bu mod, aEnabled
false
değerine ayarlanmış bir otSrpServerSetAutoEnableMode()
çağrısıyla veya SRP sunucusu bir otSrpServerSetEnabled()
işlevi çağrısıyla açıkça etkinleştirilir ya da devre dışı bırakılırsa devre dışı bırakılabilir. otSrpServerSetAutoEnableMode(false)
kullanarak otomatik etkinleştirme modunun devre dışı bırakılması, SRP sunucusunun mevcut durumunu değiştirmez (ör. etkinse etkin kalır).
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
otSrpServerSetDomain
otError otSrpServerSetDomain( otInstance *aInstance, const char *aDomain )
SRP sunucusunda alanı ayarlar.
aDomain
öğesi henüz yoksa sonda bir nokta eklenir. Yalnızca SRP sunucusu etkinleştirilmeden önce çağrılmalıdır.
Ayrıntılar | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parametreler |
|
||||||||
Döndürülen Değerler |
|
otSrpServerSetEnabled
void otSrpServerSetEnabled( otInstance *aInstance, bool aEnabled )
SRP sunucusunu etkinleştirir/devre dışı bırakır.
Sınır Yönlendiricide bunun yerine otSrpServerSetAutoEnableMode()
kullanılması önerilir.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
otSrpServerSetLeaseConfig
otError otSrpServerSetLeaseConfig( otInstance *aInstance, const otSrpServerLeaseConfig *aLeaseConfig )
SRP sunucusu LEASE ve KEY-LEASE yapılandırmalarını ayarlar.
Bir istemciden sıfır olmayan bir LEASE süresi istendiğinde, verilen değer [aMinLease, aMaxLease] aralığında sınırlanır ve [aMinKeyLease, aMaxKeyLease] aralığında, sıfır olmayan bir KEY-LEASE verilir. Sıfır LEASE veya KEY-LEASE süresi için sıfır verilir.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
Döndürülen Değerler |
|
otSrpServerSetServiceUpdateHandler
void otSrpServerSetServiceUpdateHandler( otInstance *aInstance, otSrpServerServiceUpdateHandler aServiceHandler, void *aContext )
SRP hizmet güncellemeleri işleyicisini SRP sunucusunda ayarlar.
Ayrıntılar | |||||||
---|---|---|---|---|---|---|---|
Parametreler |
|
otSrpServerSetTtlConfig
otError otSrpServerSetTtlConfig( otInstance *aInstance, const otSrpServerTtlConfig *aTtlConfig )
SRP sunucusu TTL yapılandırmasını ayarlar.
Verilen TTL, minimum ve maksimum TTL yapılandırmasından bağımsız olarak her zaman otSrpServerSetLeaseConfig()
aracılığıyla yapılandırılan maksimum kiralama aralığından büyük olmaz.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
Döndürülen Değerler |
|
Kaynaklar
OpenThread API Referans konuları, GitHub'da bulunan kaynak koddan gelir. Daha fazla bilgi edinmek veya dokümanlarımıza katkıda bulunmak için Kaynaklar bölümüne bakın.