UDP

Bu modül, UDP iletişimini kontrol eden işlevler içerir.

Özet

Sıralamalar

otNetifIdentifier{
  OT_NETIF_UNSPECIFIED = 0,
  OT_NETIF_THREAD,
  OT_NETIF_BACKBONE
}
enum
OpenThread ağ arayüzü tanımlayıcılarını tanımlar.

Türdefler

otNetifIdentifier typedef
OpenThread ağ arayüzü tanımlayıcılarını tanımlar.
otUdpHandler)(void *aContext, const otMessage *aMessage, const otMessageInfo *aMessageInfo) typedef
bool(*
Bu geri çağırma, OpenThread'in belirli UDP mesajları için belirli işleyiciler sağlamasına olanak tanır.
otUdpReceive)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo) typedef
void(*
Bu geri çağırma, OpenThread'in alınan UDP mesajını uygulamaya bildirmesini sağlar.
otUdpReceiver typedef
struct otUdpReceiver
Bir UDP alıcısını temsil eder.
otUdpSocket typedef
struct otUdpSocket
Bir UDP soketini temsil eder.

İşlevler

otUdpAddReceiver(otInstance *aInstance, otUdpReceiver *aUdpReceiver)
UDP alıcısı ekler.
otUdpBind(otInstance *aInstance, otUdpSocket *aSocket, const otSockAddr *aSockName, otNetifIdentifier aNetif)
UDP/IPv6 soketini bağlayın.
otUdpClose(otInstance *aInstance, otUdpSocket *aSocket)
Bir UDP/IPv6 yuvasını kapatın.
otUdpConnect(otInstance *aInstance, otUdpSocket *aSocket, const otSockAddr *aSockName)
UDP/IPv6 soketi bağlayın.
otUdpGetSockets(otInstance *aInstance)
Bağlı UDP Yuvaları listesinin başını alır.
otUdpIsOpen(otInstance *aInstance, const otUdpSocket *aSocket)
bool
Bir UDP soketinin açık olup olmadığını kontrol edin.
otUdpNewMessage(otInstance *aInstance, const otMessageSettings *aSettings)
UDP mesajı göndermek için yeni bir mesaj arabelleği ayırın.
otUdpOpen(otInstance *aInstance, otUdpSocket *aSocket, otUdpReceive aCallback, void *aContext)
Bir UDP/IPv6 yuvası açın.
otUdpRemoveReceiver(otInstance *aInstance, otUdpReceiver *aUdpReceiver)
Bir UDP alıcısını kaldırır.
otUdpSend(otInstance *aInstance, otUdpSocket *aSocket, otMessage *aMessage, const otMessageInfo *aMessageInfo)
UDP/IPv6 mesajı gönderin.
otUdpSendDatagram(otInstance *aInstance, otMessage *aMessage, otMessageInfo *aMessageInfo)
Yuva olmadan UDP mesajı gönderir.

Yapılar

otUdpReceiver

Bir UDP alıcısını temsil eder.

otUdpSocket

Bir UDP soketini temsil eder.

Sıralamalar

otNetifIdentifier

 otNetifIdentifier

OpenThread ağ arayüzü tanımlayıcılarını tanımlar.

Özellikler
OT_NETIF_BACKBONE

Omurga arayüzü.

OT_NETIF_THREAD

Thread arayüzü.

OT_NETIF_UNSPECIFIED

Belirtilmemiş ağ arayüzü.

Türdefler

otNetifIdentifier

enum otNetifIdentifier otNetifIdentifier

OpenThread ağ arayüzü tanımlayıcılarını tanımlar.

otUdpHandler

bool(* otUdpHandler)(void *aContext, const otMessage *aMessage, const otMessageInfo *aMessageInfo)

Bu geri çağırma, OpenThread'in belirli UDP mesajları için belirli işleyiciler sağlamasına olanak tanır.

Ayrıntılar
Döndürülen Değerler
true
İleti, bu alıcı tarafından işlendiği için daha fazla işlenmez.
false
İleti, bu alıcı tarafından işlenmiyor.

otUdpReceive

void(* otUdpReceive)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo)

Bu geri çağırma, OpenThread'in alınan UDP mesajını uygulamaya bildirmesini sağlar.

otUdpReceiver

struct otUdpReceiver otUdpReceiver

Bir UDP alıcısını temsil eder.

otUdpSocket

struct otUdpSocket otUdpSocket

Bir UDP soketini temsil eder.

İşlevler

otUdpAddReceiver

otError otUdpAddReceiver(
  otInstance *aInstance,
  otUdpReceiver *aUdpReceiver
)

UDP alıcısı ekler.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğinin işaretçisi.
[in] aUdpReceiver
UDP alıcısına işaret eden bir işaretçi.
Döndürülen Değerler
OT_ERROR_NONE
Alıcı başarıyla eklendi.
OT_ERROR_ALREADY
UDP alıcısı zaten eklendi.

otUdpBind

otError otUdpBind(
  otInstance *aInstance,
  otUdpSocket *aSocket,
  const otSockAddr *aSockName,
  otNetifIdentifier aNetif
)

UDP/IPv6 soketini bağlayın.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğinin işaretçisi.
[in] aSocket
UDP soketi yapısını gösteren işaretçi.
[in] aSockName
IPv6 yuva adres yapısının işaretçisi.
[in] aNetif
Bağlanacak ağ arayüzü.
Döndürülen Değerler
OT_ERROR_NONE
Bağlama işlemi başarılı oldu.
OT_ERROR_FAILED
UDP soketi bağlanamadı.

otUdpClose

otError otUdpClose(
  otInstance *aInstance,
  otUdpSocket *aSocket
)

Bir UDP/IPv6 yuvasını kapatın.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğinin işaretçisi.
[in] aSocket
UDP soketi yapısını gösteren işaretçi.
Döndürülen Değerler
OT_ERROR_NONE
Priz başarıyla kapatıldı.
OT_ERROR_FAILED
UDP Yuvası kapatılamadı.

otUdpConnect

otError otUdpConnect(
  otInstance *aInstance,
  otUdpSocket *aSocket,
  const otSockAddr *aSockName
)

UDP/IPv6 soketi bağlayın.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğinin işaretçisi.
[in] aSocket
UDP soketi yapısını gösteren işaretçi.
[in] aSockName
IPv6 yuva adres yapısının işaretçisi.
Döndürülen Değerler
OT_ERROR_NONE
Bağlantı işlemi başarılı oldu.
OT_ERROR_FAILED
UDP soketine bağlanılamadı.

otUdpGetSockets

otUdpSocket * otUdpGetSockets(
  otInstance *aInstance
)

Bağlı UDP Yuvaları listesinin başını alır.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğinin işaretçisi.
İadeler
UDP Yuvası bağlı listesinin başına işaret eden bir işaretçi.

otUdpIsOpen

bool otUdpIsOpen(
  otInstance *aInstance,
  const otUdpSocket *aSocket
)

Bir UDP soketinin açık olup olmadığını kontrol edin.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğinin işaretçisi.
[in] aSocket
UDP soketi yapısını gösteren işaretçi.
İadeler
UDP soketinin açık olup olmadığı.

otUdpNewMessage

otMessage * otUdpNewMessage(
  otInstance *aInstance,
  const otMessageSettings *aSettings
)

UDP mesajı göndermek için yeni bir mesaj arabelleği ayırın.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğinin işaretçisi.
[in] aSettings
Varsayılan ayarların kullanılması için mesaj ayarlarına işaret eden bir işaretçi veya NULL seçeneği.
İadeler
Kullanılabilir mesaj arabelleği yoksa veya parametreler geçersizse mesaj arabelleğine veya NULL değerine işaret eder.
Şu makaleyi de inceleyebilirsiniz:
otMessageFree

otUdpOpen

otError otUdpOpen(
  otInstance *aInstance,
  otUdpSocket *aSocket,
  otUdpReceive aCallback,
  void *aContext
)

Bir UDP/IPv6 yuvası açın.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğinin işaretçisi.
[in] aSocket
UDP soketi yapısını gösteren işaretçi.
[in] aCallback
Uygulama geri çağırma işlevine işaret eden bir işaretçi.
[in] aContext
Uygulamaya özel bağlama işaret eden bir işaretçi.
Döndürülen Değerler
OT_ERROR_NONE
Yuva başarıyla açıldı.
OT_ERROR_FAILED
Yuva açılamadı.

otUdpRemoveReceiver

otError otUdpRemoveReceiver(
  otInstance *aInstance,
  otUdpReceiver *aUdpReceiver
)

Bir UDP alıcısını kaldırır.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğinin işaretçisi.
[in] aUdpReceiver
UDP alıcısına işaret eden bir işaretçi.
Döndürülen Değerler
OT_ERROR_NONE
Alıcı başarıyla kaldırıldı.
OT_ERROR_NOT_FOUND
UDP alıcısı eklenmedi.

otUdpSend

otError otUdpSend(
  otInstance *aInstance,
  otUdpSocket *aSocket,
  otMessage *aMessage,
  const otMessageInfo *aMessageInfo
)

UDP/IPv6 mesajı gönderin.

Döndürülen değer OT_ERROR_NONE ise OpenThread aMessage öğesinin sahipliğini alır ve arayan artık aMessage öğesine başvuruda bulunmamalıdır. Döndürülen değer OT_ERROR_NONE değilse çağrıyı yapan kişi aMessage sahipliğini korur. Ayrıca, mesaj arabelleğine artık ihtiyaç duyulmuyorsa aMessage boşaltılır.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğinin işaretçisi.
[in] aSocket
UDP soketi yapısını gösteren işaretçi.
[in] aMessage
İleti arabelleğine giden bir işaretçi.
[in] aMessageInfo
Mesaj bilgi yapısının işaretçisi.

Ayrıntılar
Döndürülen Değerler
OT_ERROR_NONE
İleti başarıyla gönderilmek üzere planlandı.
OT_ERROR_INVALID_ARGS
Geçersiz bağımsız değişkenler girildi.
OT_ERROR_NO_BUFS
UDP ve IPv6 başlıklarını eklemek için kullanılabilir arabellek yetersiz.

otUdpSendDatagram

otError otUdpSendDatagram(
  otInstance *aInstance,
  otMessage *aMessage,
  otMessageInfo *aMessageInfo
)

Yuva olmadan UDP mesajı gönderir.

Ayrıntılar
Parametreler
[in] aInstance
OpenThread örneğinin işaretçisi.
[in] aMessage
UDP başlığı olmayan bir iletiye işaretçi.
[in] aMessageInfo
aMessage ile ilişkili mesaj bilgisinin işaretçisi.
Döndürülen Değerler
OT_ERROR_NONE
Mesaj bir çıkış arayüzünde başarıyla sıraya alındı.
OT_ERROR_NO_BUFS
IPv6 başlıklarını eklemek için kullanılabilir arabellek yetersiz.
OT_ERROR_INVALID_ARGS
Geçersiz bağımsız değişkenler girildi.

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.