La funzione GetHostbyaddr non è sicura per i thread senza DNS e/o WINS

Traduzione articoli Traduzione articoli
Identificativo articolo: 317936 - Visualizza i prodotti a cui si riferisce l?articolo.
Questo articolo è stato precedentemente pubblicato con il codice di riferimento I317936
Espandi tutto | Chiudi tutto

Sintomi

Nonostante esista un indirizzo non valido, una chiamata a gethostbyaddr potrebbe restituire un puntatore che fa riferimento alla struttura hostent proveniente da un altro thread. In una subnet privata senza impostazioni DNS o WINS in cui sia attivata l'opzione NetBIOS su TCP/IP, quando viene effettuata la chiamata a gethostbyaddr in thread multipli per risolvere gli indirizzi della subnet, il programma dovrebbe restituire l'errore 11004 (WSANO_DATA) in presenza di indirizzi non validi.

Risoluzione

Per risolvere il problema, procurarsi il Service Pack più recente per Windows XP. Per ulteriori informazioni, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito:
322389 How to Obtain the Latest Windows XP Service Pack
La versione in lingua inglese di questa correzione deve avere i seguenti attributi di file (o successivi):
   Data       Ora    Versione     Dimensione  Nome file
   ----------------------------------------------------
   04-Apr-02  11.57  5.1.2600.41  149.120     Netbt.sys

Workaround

Per risolvere il problema, utilizzare una sezione critica per sincronizzare la chiamata a gethostbyaddr tra i thread.

Status

Microsoft ha confermato che questo problema si verifica con i prodotti elencati nella sezione "Si applica a..." di questo articolo. Questo problema è stato corretto per la prima volta nel Service Pack 1 per Windows XP.

Proprietà

Identificativo articolo: 317936 - Ultima modifica: venerdì 31 marzo 2006 - Revisione: 3.1
Le informazioni in questo articolo si applicano a
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional Edition
Chiavi: 
kbqfe kbhotfixserver kbbug kbdns kbenv kbfix kbgrpdsnet kbnetwork kbsdkplatform kbsdkwin32 kbwin2000presp3fix kbwinsock kbwinxppresp1fix kbwinxpsp1fix KB317936
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com