stapprobes.socket

Langue: en

Autres versions - même langue

Version: 2007-03-26 (fedora - 16/08/07)

Section: 5 (Format de fichier)

NAME

stapprobes.socket - systemtap socket probe points

DESCRIPTION

This family of probe points is used to probe socket activities. It contains the following probe points:

socket.send

Fires at the conclusion of sending a message on a socket. This probe alias includes the socket.sendmsg.return and socket.do_write.return probes (these two probes should catch all messages sent on sockets). The arguments supplied at the beginning of the send are cached and made available in this probe.

Context:

The message sender.

Arguments:

name
    Name of this probe.

size
    Size of message sent (in bytes) or error code if success == 0

protocol
    Protocol used on the socket. Use sock_prot_num2str(protocol) 
    to convert to a string.


    Common values include:
         0 - IP (Internet Procotol, local interprocess communications)
         6 - TCP (Transmission Control Protocol)
        17 - UDP (User Datagram Protocol)
       132 - SCTP (Stream Control Transmission Protocol)


     Refer to /etc/protocols for a complete list of possible values.

family
    Protocol family of the socket (from include/linux/socket.h).
    Use sock_fam_num2str(family) to convert to a string.


    Possible values are:
        0  - UNSPEC (Unspecified)
        1  - LOCAL (Unix domain/local sockets)
        2  - INET (Internet Protocol (IP))
        3  - AX25 (Amateur Radio AX.25)
        4  - IPX (Novell IPX)
        5  - APPLETALK (AppleTalk DDP)
        6  - NETROM (Amateur Radio NET/ROM)
        7  - BRIDGE (Multiprotocol bridge)
        8  - ATMPVC (ATM PVCs)
        9  - X25 (X.25)
        10 - INET6 (IP version 6)
        11 - ROSE (Amateur Radio X.25 PLP)
        12 - DECNET (Reserved for DECnet project)
        13 - NETBEUI (Reserved for 802.2LLC project)
        14 - SECURITY (Security callback pseudo AF)
        15 - KEY (key management API)
        16 - NETLINK (Netlink protocol)
        17 - PACKET (Packet family)
        18 - ASH (Ash)
        19 - ECONET (Acorn Econet)
        20 - ATMSVC (ATM SVCs)
        22 - SNA (Linux SNA Project)
        23 - IRDA (IRDA sockets)
        24 - PPP0X (PPPoX sockets)
        25 - WANPIPE (Wanpipe API Sockets)
        26 - LLC (Linux LLC)
        30 - TIPC (TIPC sockets)
        31 - BLUETOOTH (Bluetooth sockets)

state
    State of the socket.  Use sock_state_num2str(state) to convert
    to a string.


    Possible values are:
        0 - FREE (not allocated)
        1 - UNCONNECTED (unconnected to any socket)
        2 - CONNECTING (in the process of connecting)
        3 - CONNECTED (connected to a socket)
        4 - DISCONNECTING (in the process of disconnecting)

flags
    Socket flags.  Use sock_flags_num2str(flags) to convert
    to a string.


    Possible values are:
        0 - ASYNC_NOSPACE
        1 - ASYNC_WAITDATA
        2 - NOSPACE
        3 - PASSCRED
        4 - PASSSEC

type
    Socket type.  Use sock_type_num2str(type) to convert
    to a string.


    Possible values are:
        1  - STREAM (stream connection socket)
        2  - DGRAM (datagram connectionless socket)
        3  - RAW (raw socket)
        4  - RDM (reliably-deliverd message)
        5  - SEQPACKET (sequential packet socket)
        6  - DCCP (datagram congestion control protocol socket)
        10 - PACKET (Linux-specific way of getting packets at device level)

mflags
    Message type bitmap.  Use msg_flags_num2str(flags) to convert
    to a string.


    Possible bit settings are:
        0x01   - OOB
        0x02   - PEEK
        0x04   - DONTROUTE
        0x08   - CTRUNC
        0x10   - PROBE (Do not send. Only probe path f.e. for MTU)
        0x20   - TRUNC
        0x40   - DONTWAIT (Nonblocking IO)
        0x80   - EOR (End of record)
        0x100  - WAITALL (Wait for a full request)
        0x200  - FIN
        0x400  - SYN
        0x800  - CONFIRM (Confirm path validity)
        0x1000 - RST
        0x2000 - ERRQUEUE (Fetch message from error queue)
        0x4000 - NOSIGNAL (Do not generate SIGPIPE)
        0x8000 - MORE (Sender will send more)

success
    Was send successful?


    Possible values are:
        1 - Yes
        0 - No

socket.receive

Fires at the conclusion of receiving a message on a socket. This probe alias includes the socket.recvmsg.return and socket.do_read.return probes (these two probes should catch all messages received on sockets). The arguments supplied at the beginning of the receive are cached and made available in this probe.

Context:

The message receiver.

Arguments:

Same as socket.send.

socket.sendmsg

Fires when the sock_sendmsg() kernel function is entered.

Context:

The message sender.

Arguments:

Same as socket.send, with the following exceptions:

size


    Size of message being sent (in bytes).

success


    Not used.

socket.sendmsg.return

Fires when the sock_sendmsg() kernel function returns.

Context:

The message sender.

Arguments:

Same as socket.send

socket.recvmsg

Fires when the sock_recvmsg() kernel function is entered.

Context:

The message receiver.

Arguments:

Same as socket.receive, with the following exceptions:

size


    Size of message being received (in bytes).

success


    Not used.

socket.recvmsg.return

Fires when the sock_recvmsg() kernel function returns.

Context:

The message receiver.

Arguments:

Same as socket.receive.

socket.do_write

Fires when the do_sock_write() kernel function is entered.

Context:

The message sender.

Arguments:

Same as socket.send, with the following exceptions:

size


    Size of message being sent (in bytes).

success


    Not used.

socket.do_write.return

Fires when the do_sock_write() kernel function returns.

Context:

The message sender.

Arguments:

Same as socket.send.

socket.do_read

Fires when the do_sock_read() kernel function is entered.

Context:

The message receiver.

Arguments:

Same as socket.receive, with the following exceptions:

size


    Size of message being received (in bytes).

success


    Not used.

socket.do_read.return

Fires when the do_sock_read() kernel function returns.

Context:

The message receiver.

Arguments:

Same as socket.receive.

socket.create

Fires at the beginning of creating a socket.

Context:

The socket creator.

Arguments:

name
protocol
family
type
    See  socket.send.

requester
    Requester type.


    Possible values are:
        1 - kernel
        0 - user

socket.create.return

Fires at the end of creating a socket.

Context:

The socket creator.

Arguments:

Same as socket.create, plus:

err
    Return code.


    Possible values are:
        0 - success
      < 0 - error

success
    Was the socket created successfully?


    Possible values are:
        1 - Yes
        0 - No

socket.close

Fires at the beginning of closing a socket.

Context:

The socket closer.

Arguments:

name
protocol
family
state
flags
type
    See socket.send.

socket.close.return

Fires at the end of closing a socket.

Context:

The socket closer.

Arguments:

name
    Name of this probe.

SEE ALSO

stap(1), stapprobes(5), stapfuncs(5)