Serveur de symboles et pare-feu Internet
Certains systèmes utilisent des pare-feu Internet ou des serveurs proxy qui nécessitent une authentification pour tout le trafic Internet. Les versions antérieures du serveur de symboles ne pouvaient pas accéder aux symboles à partir d’Internet, sauf si le système utilisait un client de pare-feu qui gérait l’authentification de manière transparente.
À compter de Dbghelp 6.1, le serveur de symboles prend en charge les serveurs proxy qui nécessitent une telle authentification. Le serveur de symboles utilise n’importe quel serveur configuré comme serveur par défaut dans les paramètres LAN de l’ordinateur. Pour ce faire, ouvrez l’élément Options Internet dans Panneau de configuration, cliquez sur l’onglet Connexions, puis sur Paramètres réseau. Vous pouvez également effectuer cette opération à partir d’Internet Explorer en cliquant sur Options Internet dans le menu Outils. Le serveur de symboles a été testé sur de nombreuses marques de serveurs proxy à l’aide des méthodes d’authentification de base et de défi-réponse.
Pour définir un serveur proxy spécifique que le serveur de symboles doit utiliser, définissez la variable d’environnement _NT_SYMBOL_PROXY sur le nom (ou l’adresse IP) du serveur proxy, suivi du numéro de port. Séparez les deux valeurs par un signe deux-points. Par exemple :
set _NT_SYMBOL_PROXY=myproxyserver:80
Lorsque vous utilisez le débogueur windbg, configurez le chemin de votre symbole pour qu’il pointe vers le magasin de symboles que vous souhaitez utiliser. La seule différence est que le système affiche une boîte de dialogue dans laquelle vous devez entrer votre ID d’utilisateur et votre mot de passe pour passer au serveur proxy. Si vous entrez des informations incorrectes, la boîte de dialogue est réaffichée. Si vous cliquez sur le bouton Annuler , la boîte de dialogue est ignorée et le serveur de symboles est désactivé pour une utilisation via Internet.
Lorsque vous utilisez les dernières versions de cdb.exe ou ntsd.exe, cette fonctionnalité est désactivée par défaut. Toutefois, vous pouvez activer ou désactiver cette fonctionnalité à l’aide de la commande d’extension !sym comme suit :
- Pour activer l’invite pour l’ID utilisateur et le mot de passe : !sym invite.
- Pour désactiver l’invite d’identification utilisateur et de mot de passe : !sym invite à la désactivation.
Si vous activez l’invite, vous devez recharger les symboles avec la commande .reload.
L’API DbgHelp a été développée pour prendre en charge ces modifications. La fonction SymbolServerSetOptions prend en charge l’option SSRVOPT_PROXY. Si le paramètre de données est NULL, le proxy par défaut défini dans Options Internet est utilisé. Dans le cas contraire, une chaîne terminée à zéro est passée en spécifiant le nom et le numéro de port du serveur proxy. Le nom et le port sont séparés par un signe deux-points comme suit : myproxyserver:80. La fonction SymSetOptions prend en charge l’option SYMOPT_NO_PROMPTS. Cela désactive toutes les invites de validation du serveur de symboles.