SO_DEBUG |
Reporte si les informations de débogage sont enregistrées ou pas.
|
int
|
SO_BROADCAST |
Reporte si la transmission des annonces globales est supportée ou pas.
|
int
|
SO_REUSEADDR |
Indique si les adresses locales peuvent être réutilisées ou pas.
|
int
|
SO_REUSEPORT |
Indique si les ports locaux peuvent être réutilisés.
|
int
|
SO_KEEPALIVE |
Reporte si les connexions sont persistantes avec des transmissions
périodiques de messages ou pas. Si le socket connecté échoue en
réponse à ces messages, la connexion est interrompue et le processus
écrira sur ce socket une notification avec un signal SIGPIPE.
|
int
|
SO_LINGER |
Reporte si le socket socket s'attarde sur
la fonction socket_close() si des données sont
présentes ou pas. Par défaut, lorsque le socket est fermé,
socket_close() tente d'envoyer toutes les
données qui ne l'ont pas encore été.
Si l_onoff ne vaut pas zéro et que
l_linger vaut zéro, toutes les données
qui n'ont pas encore été envoyées seront annulées et RST
(réinitialisation) sera envoyé dans le cas d'une connexion
orientée socket.
D'un autre côté, si l_onoff ne vaut pas zéro
et l_linger ne vaut pas zéro,
socket_close() bloquera tant que les données
non envoyées ne le seront pas ou pendant le temps spécifié par
l_linger. Si le socket est non-bloquant,
socket_close() échouera et retournera une
erreur.
|
array. Le tableau contiendra 2 clés :
l_onoff et
l_linger.
|
SO_OOBINLINE |
Reporte si le socket socket part sur des données en
ligne out-of-band ou pas.
|
int
|
SO_SNDBUF |
Reporte les informations sur la taille du tampon envoyé.
|
int
|
SO_RCVBUF |
Reporte les informations sur la taille du tampon reçu.
|
int
|
SO_ERROR |
Reporte les informations sur le statut de l'erreur et le vide.
|
int (ne peut être défini par la fonction
socket_set_option())
|
SO_TYPE |
Reporte le type de le socket socket (e.g.
SOCK_STREAM ).
|
int (ne peut être défini par la fonction
socket_set_option())
|
SO_DONTROUTE |
Reporte si les messages sortants dévient les équipements standard de cheminement.
|
int
|
SO_RCVLOWAT |
Reporte le nombre minimal d'octets au processus pour les opérations
entrantes sur le socket socket .
|
int
|
SO_RCVTIMEO |
Reporte la valeur du délai d'exécution pour les opérations entrantes.
|
array. Le tableau contiendra 2 clés :
sec qui est la partie représentant les secondes
de la valeur du délai d'attente et usec qui est
la partie représentant les microsecondes.
|
SO_SNDTIMEO |
Reporte la valeur du délai d'exécution spécifiant le temps maximal d'exécution
pour les fonctions sortantes bloquantes parce que la commande d'écoulement
empêche des données d'être envoyé.
|
array. Le tableau contiendra 2 clés :
secqui est la partie représentant les secondes
de la valeur du délai d'attente et usec qui est
la partie représentant les microsecondes.
|
SO_SNDLOWAT |
Reporte le nombre minimal d'octets au processus pour les opérations
sortantes sur le socket socket .
|
int
|
TCP_NODELAY |
Indique si l'algorithme Nagle TCP est désactivé.
|
int
|
MCAST_JOIN_GROUP |
Joint un groupe multicast.
|
Un tableau avec une clé "group" ,
spécifiant une chaîne de caractères avec les adresses multicast IPv4 ou IPv6
et une clé "interface" , spécifiant soit un
numéro d'interface (de type int), soit une
chaîne de caractères avec le nom de l'interface, comme
"eth0" .
0 peut être spécfié pour indiquer que l'interface
doit être sélectionné en utilisant les règles de routage (ne peut être
utilisé qu'avec la fonction socket_set_option()).
|
MCAST_LEAVE_GROUP |
Quitte un groupe multicast.
|
Un tableau. Voir la constante MCAST_JOIN_GROUP
pour plus d'informations (ne peut être utilisé qu'avec la fonction
socket_set_option()).
|
MCAST_BLOCK_SOURCE |
Paquets de bloc arrivant depuis une source spécifique
vers un groupe multicast spécifique, qui aura du être joint
auparavant.
|
Un tableau contenant les mêmes clés que celles de la constante
MCAST_JOIN_GROUP , avec une clé supplémentaire
source , lié à une chaîne de caractère spécifiant
une adresse IPv4 ou IPv6 de la source à bloquer
(ne peut être utilisé qu'avec la fonction
socket_set_option()).
|
MCAST_UNBLOCK_SOURCE |
Débloque (recommence à recevoir) les paquets arrivant depuis
une source spécifique vers un groupe multicast spécifique,
qui aura dû être joins auparavant.
|
Un tableau au même format que celui de la constante
MCAST_BLOCK_SOURCE
(ne peut être utilisé qu'avec la fonction
socket_set_option()).
|
MCAST_JOIN_SOURCE_GROUP |
Reçoit des paquets destinés à un groupe multicast spécifique
dont l'adresse source correspond à une valeur spécifique.
|
Un tableau au même format que celui de la constante
MCAST_BLOCK_SOURCE
(ne peut être utilisé qu'avec la fonction
socket_set_option()).
|
MCAST_LEAVE_SOURCE_GROUP |
Arrête de recevoir des paquets destinés à un groupe multicast
spécifique dont l'adresse source correspond à une valeur spécifique.
|
Un tableau au même format que celui de la constante
MCAST_BLOCK_SOURCE
(ne peut être utilisé qu'avec la fonction
socket_set_option()).
|
IP_MULTICAST_IF |
L'interface de sortie pour les paquets multicast IPv4.
|
Soit un entier spécifiant le numéro de l'interface, soit une
chaîne de caractères représentant le nom de l'interface, par exemple,
eth0 . La valeur 0
peut être utilisé pour indiquer la table de routage à utiliser
dans la sélection de l'interface. La fonction
socket_get_option() retourne un index d'interface.
Notez que, contrairement à l'API C, cette option ne prend pas
comme argument une adresse IP. Ceci élimine la différence d'interface
entre les constantes IP_MULTICAST_IF et
IPV6_MULTICAST_IF .
|
IPV6_MULTICAST_IF |
L'interface de sortie pour les paquets multicast IPv6.
|
Identique à la constante IP_MULTICAST_IF .
|
IP_MULTICAST_LOOP |
La politique de la boucle locale multicast pour les paquets
IPv4 active ou désactive le bouclage des multidiffusions sortantes,
qui doivent avoir été jointes auparavant. L'effet diffère cependant
selon qu'il s'applique à Unix ou à Windows, le premier étant sur le
chemin de réception tandis que le second sur le chemin d'envoi.
|
Un entier (soit 0 , soit 1 ).
Pour la fonction socket_set_option(),
n'importe quelle valeur sera acceptée et sera convertie
en un booléen suivant les règles habituelles de PHP.
|
IPV6_MULTICAST_LOOP |
Identique à la constante IP_MULTICAST_LOOP ,
mais pour l'IPv6.
|
Un entier. Voir la constante IP_MULTICAST_LOOP .
|
IP_MULTICAST_TTL |
La durée de vie des paquets sortants multicast IPv4.
Ce doit être une valeur comprise entre 0 (ne pas quitter
l'interface) et 255. Par défaut, la valeur est à 1 (seul
le réseau local est atteint).
|
Un entier entre 0 et 255.
|
IPV6_MULTICAST_HOPS |
Identique à la constante IP_MULTICAST_TTL ,
mais pour les paquets IPv6. La valeur -1 est également acceptée,
signifiant que la route par défaut doit être utilisée.
|
Un entier compris entre -1 et 255.
|
SO_MARK |
Définit un identifiant sur le socket pour le but de filtrer
les packets sur Linux.
|
int
|
SO_ACCEPTFILTER |
Ajoute un filtre d'acceptation sur le socket écouté (FreeBSD/NetBSD).
Un module kernel de filtre d'acceptation doit d'abord être chargé
sur FreeBSD (e.g. accf_http).
|
string name of the filter (length 15 max).
|
SO_USER_COOKIE |
Définit un identifiant sur le socket pour le but de filtrer
les packets sur FreeBSD.
|
int
|
SO_RTABLE |
Définit un identifiant sur le socket pour le but de filtrer
les packets sur OpenBSD.
|
int
|
SO_DONTTRUNC |
Conserve les données non lues.
|
int
|
SO_WANTMORE |
Fournit un indice quand plus de données sont prêtes.
|
int
|
TCP_DEFER_ACCEPT |
Ne pas notifier un socket qui écoute tant que les données ne sont pas prêtes.
|
int
|
SO_INCOMING_CPU |
Récupère/Définit l'affinité du cpu pour un socket.
|
int
|
SO_MEMINFO |
Récupère toute les meminfo d'un socket.
|
int
|
SO_BPF_EXTENSIONS |
Récupère les extensions BPF supportées par le kernel à attacher à un socket.
|
int
|
SO_SETFIB |
Définit la table de route (FIB) d'un socket. (FreeBSD uniquement)
|
int
|
SOL_FILTER |
Filtres attribués à un socket. (Solaris/Illumos uniquement)
|
int
|
TCP_KEEPCNT |
Définit le nombre maximal de sondes keepalive TCP devrait envoyer avant de lâcher la connexion.
|
int
|
TCP_KEEPIDLE |
Définit le temps que la connexion doit rester inactive.
|
int
|
TCP_KEEPINTVL |
Définit le temps entre les sondes keepalive individuelles.
|
int
|
TCP_KEEPALIVE |
Définit le temps que la connexion doit rester inactive. (macOS uniquement)
|
int
|
TCP_NOTSENT_LOWAT |
Définit le nombre limite de données non envoyées dans la file d'attente d'écriture
par le flux de socket. (Linux uniquement)
|
int
|