# nng_socket_proto_name(3) Manual Page

## NAME

nng_socket_proto_name - obtain the socket protocol name

## SYNOPSIS

    #include <nng/nng.h>

    int nng_socket_proto_name(nng_socket s, const char **name);
    int nng_socket_peer_name(nng_socket s, const char **name);

## DESCRIPTION

These functions store the protocol name of either the socket s, or its natural peer, in _name.

| The string value obtained by these functions is statically stored as part of the program text, and must not be freed or modified.

| These functions should be used in place of the `NNG_OPT_PROTONAME` and `NNG_OPT_PEERNAME` options in new code.

## RETURN VALUES

These functions return zero on success, or an error if the socket is invalid.

## ERRORS

`NNG_ECLOSED` | Parameter s does not refer to an open socket.

## SEE ALSO

nng_socket(5), nng(7)