Man page - listen(2)

Packages contains this manual

Available languages:

en fr cs tr ja ru ro zh_TW zh_CN de

Manual

LISTEN

NAME 名 稱
SYNOPSIS 概 述
DESCRIPTION 描 述
NOTES 注 意
RETURN VALUE 返 回 值
ERRORS 錯 誤
CONFORMING TO 兼 容 於
BUGS 勘 誤
SEE ALSO 參 見
[中 文 版 維 護 人 ]
[中 文 版 最 新 更 新 ]
《 中 國 linux論 壇 man手 冊 頁 翻 譯 計 劃 》 :


NAME 名 稱

listen - listen for connections on a socket 在 一 個 套 接 字 上 傾 聽 連 線

SYNOPSIS 概 述

#include <sys/socket.h>

int listen(int s , int backlog );

DESCRIPTION 描 述

在 接 收 連 線 之 前 ,首 先 要 使 用 socket (2) 建 立 一 個 套 接 字 ,然 後 呼 叫 listen 使 其 能 夠 自 動 接 收 到 來 的 連 線 並 且 為 連 線 佇 列 指 定 一 個 長 度 限 制 . 之 後 就 可 以 使 用 accept (2) 接 收 連 線 . listen 呼 叫 僅 適 用 於 SOCK_STREAM 或 者 SOCK_SEQPACKET 型 別 的 套 接 字 .

引 數 backlog 指 定 未 完 成 連 線 佇 列 的 最 大 長 度 .如 果 一 個 連 線 請 求 到 達 時 未 完 成 連 線 佇 列 已 滿 ,那 麼 客 戶 端 將 接 收 到 錯 誤 ECONNREFUSED. 或 者 ,如 果 下 層 協 議 支 援 重 發 ,那 麼 這 個 連 線 請 求 將 被 忽 略 ,這 樣 客 戶 端 在 重 試 的 時 候 就 有 成 功 的 機 會 .

NOTES 注 意

在 TCP套 接 字 中 backlog 的 含 義 在 Linux 2.2中 已 經 改 變 . 它 指 定 了 已 經 完 成 連 線 正 等 待 應 用 程 式 接 收 的 套 接 字 佇 列 的 長 度 ,而 不 是 未 完 成 連 線 的 數 目 .未 完 成 連 線 套 接 字 佇 列 的 最 大 長 度 可 以 使 用 tcp_max_syn_backlog sysctl設 定 當 開 啟 syncookies時 不 存 在 邏 輯 上 的 最 大 長 度 ,此 設 定 將 被 忽 略 .參 見 tcp (7) 以 獲 取 更 多 資 訊 .

RETURN VALUE 返 回 值

函 式 執 行 成 功 時 返 回 0.錯 誤 時 返 回 -1,並 置 相 應 錯 誤 程 式 碼 . errno

ERRORS 錯 誤

EBADF

引 數 s 不 是 合 法 的 描 述 符 .

ENOTSOCK

引 數 s 不 是 一 個 套 接 字 .

EOPNOTSUPP

套 接 字 型 別 不 支 援 listen 操 作 .

CONFORMING TO 兼 容 於

Single Unix, 4.4BSD, POSIX 1003.1g. listen 函 式 呼 叫 最 初 出 現 於 4.2BSD.

BUGS 勘 誤

如 果 套 接 字 型 別 是 AF_INET , 並 且 引 數 backlog 大 於 常 量 SOMAXCONN (Linux 2.0&2.2中 是 128),它 將 被 自 動 截 斷 為 SOMAXCONN 的 值 . 有 的 BSD系 統 (以 及 一 些 BSD擴 充 套 件 )將 backlog值 限 制 為 5.

SEE ALSO 參 見

accept (2), connect (2), socket (2)

[中 文 版 維 護 人 ]

byeyear <love_my_love@263.net >

[中 文 版 最 新 更 新 ]

2002.01.27

《 中 國 linux論 壇 man手 冊 頁 翻 譯 計 劃 》 :

http://cmpp.linuxforum.net

本 頁 面 中 文 版 由 中 文 man 手 冊 頁 計 劃 提 供 。
中 文 man 手 冊 頁 計 劃 : https://github.com/man-pages-zh/manpages-zh