utils (version 3.3.2)

read.socket: Read from or Write to a Socket

Description

read.socket reads a string from the specified socket, write.socket writes to the specified socket. There is very little error checking done by either.

Usage

read.socket(socket, maxlen = 256L, loop = FALSE)
write.socket(socket, string)

Arguments

socket
a socket object.
maxlen
maximum length (in bytes) of string to read.
loop
wait for ever if there is nothing to read?
string
string to write to socket.

Value

read.socket returns the string read as a length-one character vector. write.socket returns the number of bytes written.

See Also

close.socket, make.socket

Examples

Run this code
finger <- function(user, host = "localhost", port = 79, print = TRUE)
{
    if (!is.character(user))
        stop("user name must be a string")
    user <- paste(user,"\r\n")
    socket <- make.socket(host, port)
    on.exit(close.socket(socket))
    write.socket(socket, user)
    output <- character(0)
    repeat{
        ss <- read.socket(socket)
        if (ss == "") break
        output <- paste(output, ss)
    }
    close.socket(socket)
    if (print) cat(output)
    invisible(output)
}
## Not run: ------------------------------------
# finger("root")  ## only works if your site provides a finger daemon
## ---------------------------------------------

Run the code above in your browser using DataCamp Workspace