method

path

v1_9_1_378 - Show latest stable - Class: UNIXSocket
path()
public

No documentation available.

static VALUE
unix_path(VALUE sock)
{
    rb_io_t *fptr;

    GetOpenFile(sock, fptr);
    if (NIL_P(fptr->pathv)) {
        struct sockaddr_un addr;
        socklen_t len = sizeof(addr);
        if (getsockname(fptr->fd, (struct sockaddr*)&addr, &len) < 0)
            rb_sys_fail(0);
        fptr->pathv = rb_obj_freeze(rb_str_new_cstr(unixpath(&addr, len)));
    }
    return rb_str_dup(fptr->pathv);
}