2010-09-23 2 views
1

J'ai un appel de fonction socket() dans mon code (en langage C): socket (AF_INET, SOCK_STREAM, 0)) Je souhaite que cela génère une erreur. (INVALID_SOCKET Avons-nous un moyen de sortir de sorte que l'appel de fonction ci-dessus entraîne une erreur. Comme arrêter certains services, etcErreur de fonction socket() dans C

Répondre

2

Puisque vous dites que cela est dans votre code, vous pouvez définir votre propre implémentation de socket qui retourne toujours INVALID_SOCKET:

int socket(int domain, int type, int protocol) 
{ 
    return INVALID_SOCKET; 
} 

Si vous établissez un lien avec le fichier objet qui définit votre version de socket avant de lier la version réelle, l'éditeur de liens enverra tous les appels à socket à votre implémentation.

0

Vous pouvez créer autant de prises que possible à savoir jusqu'à ce qu'il échoue, appelez votre code. Ou utilisez #define pour définir les valeurs de AF_INET et/ou SOCK_STREAM sur des valeurs non valides.

+0

Merci ammoQ.En fait, je ne peux pas changer mon code (pour #define) – Pradeep

+0

Y a-t-il des limites pour la création de socket? – Pradeep

+0

AFAIK il y a une limite sur le nombre de sockets que vous pouvez ouvrir. –