added Socket::getIfceIndex(), Socket::getIfceAddress(), etc
This commit is contained in:
@ -96,11 +96,29 @@ public:
|
||||
|
||||
/* TODO: sendmsg, recvmsg */
|
||||
|
||||
// utility functions to retrieve network configuration information.
|
||||
int getIfceIndex (const qse_mchar_t* name);
|
||||
int getIfceIndex (const qse_wchar_t* name);
|
||||
|
||||
// the following 6 functions are provided for backward compatibility.
|
||||
// it is limited to a single address and they may suffer race condition.
|
||||
// for example, you call getIfceAddress() followed by getIfceNetmask().
|
||||
// the network configuration information may change in between.
|
||||
// the address/netmask pair may not be the valid fixed combination.
|
||||
int getIfceAddress (const qse_mchar_t* name, SocketAddress* addr);
|
||||
int getIfceAddress (const qse_wchar_t* name, SocketAddress* addr);
|
||||
int getIfceNetmask (const qse_mchar_t* name, SocketAddress* addr);
|
||||
int getIfceNetmask (const qse_wchar_t* name, SocketAddress* addr);
|
||||
int getIfceBroadcast (const qse_mchar_t* name, SocketAddress* addr);
|
||||
int getIfceBroadcast (const qse_wchar_t* name, SocketAddress* addr);
|
||||
|
||||
protected:
|
||||
qse_sck_hnd_t handle;
|
||||
int domain;
|
||||
ErrorCode errcode;
|
||||
|
||||
void set_errcode_with_syserr (int syserr);
|
||||
int get_ifce_address (int cmd, const void* name, bool wchar, SocketAddress* addr);
|
||||
};
|
||||
|
||||
|
||||
|
@ -70,6 +70,9 @@ public:
|
||||
qse_uint16_t getPort() const QSE_CPP_NOEXCEPT; // in network-byte order
|
||||
void setPort (qse_uint16_t port) QSE_CPP_NOEXCEPT; // in network-byte order
|
||||
|
||||
qse_uint32_t getScopeId () QSE_CPP_NOEXCEPT; // in network-byte order
|
||||
void setScopeId (qse_uint32_t scope_id) QSE_CPP_NOEXCEPT; // in network-byte order
|
||||
|
||||
int set (const qse_skad_t* skad) QSE_CPP_NOEXCEPT;
|
||||
int set (const qse_nwad_t* nwad) QSE_CPP_NOEXCEPT;
|
||||
int set (const qse_mchar_t* str) QSE_CPP_NOEXCEPT;
|
||||
@ -77,7 +80,6 @@ public:
|
||||
int set (const qse_mchar_t* str, qse_size_t len) QSE_CPP_NOEXCEPT;
|
||||
int set (const qse_wchar_t* str, qse_size_t len) QSE_CPP_NOEXCEPT;
|
||||
|
||||
|
||||
qse_mchar_t* toStrBuf (qse_mchar_t* buf, qse_size_t len) const QSE_CPP_NOEXCEPT;
|
||||
qse_wchar_t* toStrBuf (qse_wchar_t* buf, qse_size_t len) const QSE_CPP_NOEXCEPT;
|
||||
|
||||
|
Reference in New Issue
Block a user