📄 gnet-udp.html
字号:
<HTML><HEAD><TITLE>udp</TITLE><METANAME="GENERATOR"CONTENT="Modular DocBook HTML Stylesheet Version 1.77+"><LINKREL="HOME"TITLE="GNet Network Library Reference Manual"HREF="book1.html"><LINKREL="UP"TITLE="GNet Library Reference"HREF="libgnet-reference.html"><LINKREL="PREVIOUS"TITLE="socks"HREF="gnet-socks.html"><LINKREL="NEXT"TITLE="mcast"HREF="gnet-mcast.html"></HEAD><BODYCLASS="REFENTRY"BGCOLOR="#FFFFFF"TEXT="#000000"LINK="#0000FF"VLINK="#840084"ALINK="#0000FF"><DIVCLASS="NAVHEADER"><TABLEWIDTH="100%"BORDER="0"BGCOLOR="#000000"CELLPADDING="1"CELLSPACING="0"><TR><THCOLSPAN="4"ALIGN="center"><FONTCOLOR="#FFFFFF"SIZE="5">GNet Network Library Reference Manual</FONT></TH></TR><TR><TDWIDTH="25%"BGCOLOR="#C00000"ALIGN="left"><AHREF="gnet-socks.html"><FONTCOLOR="#FFFFFF"SIZE="3"><B><<< Previous Page</B></FONT></A></TD><TDWIDTH="25%"BGCOLOR="#0000C0"ALIGN="center"><FONTCOLOR="#FFFFFF"SIZE="3"><B><AHREF="book1.html"><FONTCOLOR="#FFFFFF"SIZE="3"><B>Home</B></FONT></A></B></FONT></TD><TDWIDTH="25%"BGCOLOR="#00C000"ALIGN="center"><FONTCOLOR="#FFFFFF"SIZE="3"><B><AHREF="libgnet-reference.html"><FONTCOLOR="#FFFFFF"SIZE="3"><B>Up</B></FONT></A></B></FONT></TD><TDWIDTH="25%"BGCOLOR="#C00000"ALIGN="right"><AHREF="gnet-mcast.html"><FONTCOLOR="#FFFFFF"SIZE="3"><B>Next Page >>></B></FONT></A></TD></TR></TABLE></DIV><H1><ANAME="GNET-UDP"></A>udp</H1><DIVCLASS="REFNAMEDIV"><ANAME="AEN1995"></A><H2>Name</H2>udp -- </DIV><DIVCLASS="REFSYNOPSISDIV"><ANAME="AEN1998"></A><H2>Synopsis</H2><TABLEBORDER="0"BGCOLOR="#D6E8FF"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="SYNOPSIS"> struct <AHREF="gnet-udp.html#GUDPSOCKET">GUdpSocket</A>;struct <AHREF="gnet-udp.html#GUDPPACKET">GUdpPacket</A>;<AHREF="gnet-udp.html#GUDPSOCKET">GUdpSocket</A>* <AHREF="gnet-udp.html#GNET-UDP-SOCKET-NEW">gnet_udp_socket_new</A> (void);<AHREF="gnet-udp.html#GUDPSOCKET">GUdpSocket</A>* <AHREF="gnet-udp.html#GNET-UDP-SOCKET-PORT-NEW">gnet_udp_socket_port_new</A> (<GTKDOCLINKHREF="GINT">gint</GTKDOCLINK> port);<AHREF="gnet-udp.html#GUDPSOCKET">GUdpSocket</A>* <AHREF="gnet-udp.html#GNET-UDP-SOCKET-NEW-INTERFACE">gnet_udp_socket_new_interface</A> (const <AHREF="gnet-inetaddr.html#GINETADDR">GInetAddr</A> *iface);void <AHREF="gnet-udp.html#GNET-UDP-SOCKET-DELETE">gnet_udp_socket_delete</A> (<AHREF="gnet-udp.html#GUDPSOCKET">GUdpSocket</A> *s);void <AHREF="gnet-udp.html#GNET-UDP-SOCKET-REF">gnet_udp_socket_ref</A> (<AHREF="gnet-udp.html#GUDPSOCKET">GUdpSocket</A> *s);void <AHREF="gnet-udp.html#GNET-UDP-SOCKET-UNREF">gnet_udp_socket_unref</A> (<AHREF="gnet-udp.html#GUDPSOCKET">GUdpSocket</A> *s);<GTKDOCLINKHREF="GINT">gint</GTKDOCLINK> <AHREF="gnet-udp.html#GNET-UDP-SOCKET-SEND">gnet_udp_socket_send</A> (<AHREF="gnet-udp.html#GUDPSOCKET">GUdpSocket</A> *s, const <AHREF="gnet-udp.html#GUDPPACKET">GUdpPacket</A> *packet);<GTKDOCLINKHREF="GINT">gint</GTKDOCLINK> <AHREF="gnet-udp.html#GNET-UDP-SOCKET-RECEIVE">gnet_udp_socket_receive</A> (<AHREF="gnet-udp.html#GUDPSOCKET">GUdpSocket</A> *s, <AHREF="gnet-udp.html#GUDPPACKET">GUdpPacket</A> *packet);<GTKDOCLINKHREF="GBOOLEAN">gboolean</GTKDOCLINK> <AHREF="gnet-udp.html#GNET-UDP-SOCKET-HAS-PACKET">gnet_udp_socket_has_packet</A> (const <AHREF="gnet-udp.html#GUDPSOCKET">GUdpSocket</A> *s);<GTKDOCLINKHREF="GIOCHANNEL">GIOChannel</GTKDOCLINK>* <AHREF="gnet-udp.html#GNET-UDP-SOCKET-GET-IOCHANNEL">gnet_udp_socket_get_iochannel</A> (<AHREF="gnet-udp.html#GUDPSOCKET">GUdpSocket</A> *socket);<GTKDOCLINKHREF="GINT">gint</GTKDOCLINK> <AHREF="gnet-udp.html#GNET-UDP-SOCKET-GET-TTL">gnet_udp_socket_get_ttl</A> (const <AHREF="gnet-udp.html#GUDPSOCKET">GUdpSocket</A> *us);<GTKDOCLINKHREF="GINT">gint</GTKDOCLINK> <AHREF="gnet-udp.html#GNET-UDP-SOCKET-SET-TTL">gnet_udp_socket_set_ttl</A> (<AHREF="gnet-udp.html#GUDPSOCKET">GUdpSocket</A> *us, int val);<GTKDOCLINKHREF="GINT">gint</GTKDOCLINK> <AHREF="gnet-udp.html#GNET-UDP-SOCKET-GET-MCAST-TTL">gnet_udp_socket_get_mcast_ttl</A> (const <AHREF="gnet-udp.html#GUDPSOCKET">GUdpSocket</A> *us);<GTKDOCLINKHREF="GINT">gint</GTKDOCLINK> <AHREF="gnet-udp.html#GNET-UDP-SOCKET-SET-MCAST-TTL">gnet_udp_socket_set_mcast_ttl</A> (<AHREF="gnet-udp.html#GUDPSOCKET">GUdpSocket</A> *us, <GTKDOCLINKHREF="GINT">gint</GTKDOCLINK> val);<AHREF="gnet-udp.html#GUDPPACKET">GUdpPacket</A>* <AHREF="gnet-udp.html#GNET-UDP-PACKET-RECEIVE-NEW">gnet_udp_packet_receive_new</A> (<GTKDOCLINKHREF="GUINT8">guint8</GTKDOCLINK> *data, <GTKDOCLINKHREF="GINT">gint</GTKDOCLINK> length);<AHREF="gnet-udp.html#GUDPPACKET">GUdpPacket</A>* <AHREF="gnet-udp.html#GNET-UDP-PACKET-SEND-NEW">gnet_udp_packet_send_new</A> (<GTKDOCLINKHREF="GUINT8">guint8</GTKDOCLINK> *data, <GTKDOCLINKHREF="GINT">gint</GTKDOCLINK> length, <AHREF="gnet-inetaddr.html#GINETADDR">GInetAddr</A> *addr);void <AHREF="gnet-udp.html#GNET-UDP-PACKET-DELETE">gnet_udp_packet_delete</A> (<AHREF="gnet-udp.html#GUDPPACKET">GUdpPacket</A> *packet);</PRE></TD></TR></TABLE></DIV><DIVCLASS="REFSECT1"><ANAME="AEN2055"></A><H2>Description</H2><P></P></DIV><DIVCLASS="REFSECT1"><ANAME="AEN2058"></A><H2>Details</H2><DIVCLASS="REFSECT2"><ANAME="AEN2060"></A><H3><ANAME="GUDPSOCKET"></A>struct GUdpSocket</H3><TABLEBORDER="0"BGCOLOR="#D6E8FF"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="PROGRAMLISTING">struct GUdpSocket;</PRE></TD></TR></TABLE><P></P></DIV><HR><DIVCLASS="REFSECT2"><ANAME="AEN2065"></A><H3><ANAME="GUDPPACKET"></A>struct GUdpPacket</H3><TABLEBORDER="0"BGCOLOR="#D6E8FF"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="PROGRAMLISTING">struct GUdpPacket{ gint8* data; guint length; GInetAddr* addr;};</PRE></TD></TR></TABLE><P>GUdpPacket is a simple helper struct. Its fields are public. The fields 'data' and 'addr' must be deallocated by the programmer if necessary when appropriate.</P><P></P></DIV><HR><DIVCLASS="REFSECT2"><ANAME="AEN2071"></A><H3><ANAME="GNET-UDP-SOCKET-NEW"></A>gnet_udp_socket_new ()</H3><TABLEBORDER="0"BGCOLOR="#D6E8FF"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="PROGRAMLISTING"><AHREF="gnet-udp.html#GUDPSOCKET">GUdpSocket</A>* gnet_udp_socket_new (void);</PRE></TD></TR></TABLE><P>Create and open a new UDP socket with any port.</P><P></P><P></P><TABLECLASS="VARIABLELIST"BORDER="0"CELLSPACING="0"CELLPADDING="4"WIDTH="100%"BGCOLOR="#FFD0D0"><TBODY><TR><TDALIGN="RIGHT"VALIGN="TOP"WIDTH="20%"><ANAME="AEN2079"><SPANSTYLE="white-space: nowrap"><SPANCLASS="emphasis"><ICLASS="EMPHASIS">Returns</I></SPAN> :</SPAN></TD><TDALIGN="LEFT"VALIGN="TOP"WIDTH="80%"><P> </P></TD></TR></TBODY></TABLE></DIV><HR><DIVCLASS="REFSECT2"><ANAME="AEN2084"></A><H3><ANAME="GNET-UDP-SOCKET-PORT-NEW"></A>gnet_udp_socket_port_new ()</H3><TABLEBORDER="0"BGCOLOR="#D6E8FF"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="PROGRAMLISTING"><AHREF="gnet-udp.html#GUDPSOCKET">GUdpSocket</A>* gnet_udp_socket_port_new (<GTKDOCLINKHREF="GINT">gint</GTKDOCLINK> port);</PRE></TD></TR></TABLE><P>Create and open a new UDP socket with a specific port.</P><P></P><P></P><TABLECLASS="VARIABLELIST"BORDER="0"CELLSPACING="0"CELLPADDING="4"WIDTH="100%"BGCOLOR="#FFD0D0"><TBODY><TR><TDALIGN="RIGHT"VALIGN="TOP"WIDTH="20%"><ANAME="AEN2093"><SPANSTYLE="white-space: nowrap"><TTCLASS="PARAMETER"><I>port</I></TT> :</SPAN></TD><TDALIGN="LEFT"VALIGN="TOP"WIDTH="80%"><P></P></TD></TR><TR><TDALIGN="RIGHT"VALIGN="TOP"WIDTH="20%"><ANAME="AEN2098"><SPANSTYLE="white-space: nowrap"><SPANCLASS="emphasis"><ICLASS="EMPHASIS">Returns</I></SPAN> :</SPAN></TD><TDALIGN="LEFT"VALIGN="TOP"WIDTH="80%"><P> </P></TD></TR></TBODY></TABLE></DIV><HR><DIVCLASS="REFSECT2"><ANAME="AEN2103"></A><H3><ANAME="GNET-UDP-SOCKET-NEW-INTERFACE"></A>gnet_udp_socket_new_interface ()</H3><TABLEBORDER="0"BGCOLOR="#D6E8FF"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="PROGRAMLISTING"><AHREF="gnet-udp.html#GUDPSOCKET">GUdpSocket</A>* gnet_udp_socket_new_interface (const <AHREF="gnet-inetaddr.html#GINETADDR">GInetAddr</A> *iface);</PRE></TD></TR></TABLE><P>Create and open a new UDP socket bound to the specified interface. If the interface address's port number is 0, the OS will choose the port.</P><P></P><P></P><TABLECLASS="VARIABLELIST"BORDER="0"CELLSPACING="0"CELLPADDING="4"WIDTH="100%"BGCOLOR="#FFD0D0"><TBODY><TR><TDALIGN="RIGHT"VALIGN="TOP"WIDTH="20%"><ANAME="AEN2112"><SPANSTYLE="white-space: nowrap"><TTCLASS="PARAMETER"><I>iface</I></TT> :</SPAN></TD><TDALIGN="LEFT"VALIGN="TOP"WIDTH="80%"><P></P></TD></TR><TR><TDALIGN="RIGHT"VALIGN="TOP"WIDTH="20%"><ANAME="AEN2117"><SPANSTYLE="white-space: nowrap"><SPANCLASS="emphasis"><ICLASS="EMPHASIS">Returns</I></SPAN> :</SPAN></TD><TDALIGN="LEFT"VALIGN="TOP"WIDTH="80%"><P> </P></TD></TR></TBODY></TABLE></DIV><HR><DIVCLASS="REFSECT2"><ANAME="AEN2122"></A><H3><ANAME="GNET-UDP-SOCKET-DELETE"></A>gnet_udp_socket_delete ()</H3><TABLEBORDER="0"BGCOLOR="#D6E8FF"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="PROGRAMLISTING">void gnet_udp_socket_delete (<AHREF="gnet-udp.html#GUDPSOCKET">GUdpSocket</A> *s);</PRE></TD></TR></TABLE><P>Close and delete a UDP socket.</P><P></P><P></P><TABLECLASS="VARIABLELIST"BORDER="0"CELLSPACING="0"CELLPADDING="4"WIDTH="100%"BGCOLOR="#FFD0D0"><TBODY><TR><TDALIGN="RIGHT"VALIGN="TOP"WIDTH="20%"><ANAME="AEN2130"><SPANSTYLE="white-space: nowrap"><TTCLASS="PARAMETER"><I>s</I></TT> :</SPAN></TD><TDALIGN="LEFT"VALIGN="TOP"WIDTH="80%"><P> </P></TD></TR></TBODY></TABLE></DIV><HR><DIVCLASS="REFSECT2"><ANAME="AEN2135"></A><H3><ANAME="GNET-UDP-SOCKET-REF"></A>gnet_udp_socket_ref ()</H3><TABLEBORDER="0"BGCOLOR="#D6E8FF"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="PROGRAMLISTING">void gnet_udp_socket_ref (<A
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -