⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 todo

📁 GNet是一个简单的网络库。它是目标定向的
💻
字号:
GNet TODO---------Below are features we are interested in adding.  Please see HACKING ifyou can help.Features--------- Move udp_mcast_ttl to mcast?- URL cleanup.  Need to sync with RFC.- Put include files in gnet-MAJOR.MINOR so multiple development    packages can be installed.- Support IPv6.      Someone with an IPv6 system needs to do this and test it.  I don't    want to just use IPv6 structures and claim it's IPv6 compliant.- Include more protocols    The goal here is to add basic implementations of popular file    transfer protocols (eg, HTTP, FTP).  Just the basics - nothing    fancy.    I'm hesitant to include more complex protocols (eg, NNTP, SMTP,    IRC) because they are more application-focused and have limited    use outside their specific application.  For example, someone who    wants NNTP is probably implementing a new reader and would be    better off implementing it from scratch for finer control    of the protocol.  On the other hand, if someone had a good    implementation of NNTP with a good interface and there were demand    for it, I would probably accept it.  (An alternative would be    start a gnet-protocol library which would include more complex    protocols).    I would also be more inclined to accept implementations that are    in existing, working programs as opposed to from-scratch    implementations (for complex protocols).  This is because existing    implementations have been tested both in functionality and in    interface design.  Moreover, we would be guaranteed at least one    user.- Bindings for other languages    The GTK doc folks are working on a new standard for describing    interfaces.  Use this when it's done.- Add gnet_tcp_socket_sendfile(TcpSocket*, GIOChannel*).  sendfile is    available on Linux and Windows, but I'm sure the semantics are    different (that's why having this function would be handy).- Consider adding gnet_io_channel_{readv/writev}.  Stevens says this    isn't Posix (yet?) - check how available it is.  We can always    fake it if we don't have it.API Fixes---------- Simplify callbacks.  They shouldn't include extraneous arguments.    See GInetAddrGetNameAsyncFunc.  Also make the status the first    argument.- GInetAddrNewAsyncFunc's inetaddr should be callee owned.  It's a    new() function so this makes more sense.- Remove "localhost" check from gnet_inetaddr_new_nonblock().- Change "iochannel" to "io_channel" in functions to be consistent    with GLib.- URL cleanups (see header)- Don't ref iochannels before returning them.  This is annoying.- Header files should go into gnet-MAJOR-MINOR, so different versions    can co-exist.Internal Improvements---------------------- Better asynchronous DNS    * Add option to use GNU ADNS? (and update license)    * Consider modifying glibc/BIND code?- gnet_inetaddr_new will give you localhost if you give it an hostname    of "" in Linux.  Is this true on all systems?  If not, we should    do a return-on-fail when we get an empty string.- Use getnameinfo when available (for IPv6?)Other------ More documentation and examples    Add a beginners guide/tutorial.  Show more code examples.Undecided (things discussed, but not decided on)---------- Add more error types- Fix gnet_udp_socket_get_MTU on Solaris (If there's a demand for it).    Add an argument for interface name, which maybe could come from    the list_interfaces function.- Clean up GIOChannel usage.      Seeking on a socket should raise an error.  Reading/writing to a    UDP socket should raise an error.  Etc.    We'd also like to support UDP/Mcast better.  We use a channel for    a UDP socket, though it's not really a channel.  One solution    would be to add a GIOMessageSource which supports descrete    messages and has all the functions GIOChannel has.  Another    solution is to add a send_msg and recv_msg function to GIOChannel    (or replace the vtable in GIOChannel with one that also includes    these functions).- Differentiate between creating and connecting.      So you'd have:    tcp_socket_new(void)            (this just calls socket())    tcp_socket_connect(InetAddr*)   (this calls bind(), connect())    The advantage is that we could set options and also allow the user    to bind to a specific address if the user is on a multi-homed    system.      Or, add tcp_socket_new_bind() and have tcp_socket_new call it.    You shouldn't have to bind a connecting socket, so this may not be    needed.  (Well, sometimes you do for UDP.)    GConn does this to an extent, so it may not be necessary.- Support out-of-band data.  How useful is this?  How portable?- Add lightweight intraprocess communication stuff via IOChannel.  I'd    like a shared buffer and a message queue.  These should be simple    to do.  (GLib 1.4/2.0 might have some of this?)Never (things that will probably never become part of GNet)------ Raw or low-level IP (use libpcap, libnet)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -