/*
* call-seq:
*
* Kgio.trypeek(socket, maxlen) -> buffer
* Kgio.trypeek(socket, maxlen, buffer) -> buffer
*
* Like Kgio.tryread, except it uses MSG_PEEK so it does not drain the
* socket buffer. This can only be used on sockets and not pipe objects.
* Maybe used in place of SocketMethods#kgio_trypeek for non-Kgio objects
*/
static VALUE s_trypeek(int argc, VALUE *argv, VALUE mod)
{
if (argc <= 1)
rb_raise(rb_eArgError, "wrong number of arguments");
return my_peek(0, argc - 1, &argv[1], argv[0]);
}