fix: la jointure Windows n'executait jamais le script PowerShell
Le script etait envoye sur stdin de `powershell -Command -`, qui analyse l'entree ligne par ligne. Le `}` fermant le try/catch n'etait suivi d'aucun saut de ligne : le parseur gardait l'instruction incomplete en attente et la jetait a la fermeture de stdin. PowerShell rendait la main avec le code 0 sans avoir appele Add-Computer, et l'utilisateur ne voyait qu'un « echec de la jointure (code retour 0) » sans explication. - Transmission du script d'un seul bloc via `-EncodedCommand` (base64 UTF-16LE), ce qui supprime toute analyse ligne par ligne et propage correctement les codes de sortie. Le mot de passe reste hors de la ligne de commande : il ne transite que par l'environnement du sous-processus. - Report de la sortie brute de PowerShell quand aucun marqueur n'est trouve, pour qu'un echec inattendu reste diagnosticable. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,5 +1,20 @@
|
||||
# Changelog
|
||||
|
||||
## [Non publié]
|
||||
|
||||
### Fixed
|
||||
- La jointure de domaine sous Windows échouait sans aucun message, avec un code
|
||||
retour 0. Le script PowerShell était transmis sur l'entrée standard de
|
||||
`powershell -Command -`, qui analyse stdin ligne par ligne : le bloc
|
||||
`try`/`catch` final, dépourvu de saut de ligne terminal, restait en attente
|
||||
dans le parseur et n'était jamais exécuté. PowerShell rendait donc la main
|
||||
sans avoir tenté la jointure. Le script est désormais transmis d'un bloc via
|
||||
`-EncodedCommand`.
|
||||
- En l'absence de marqueur de succès comme d'échec, le message d'erreur se
|
||||
réduisait à « code retour 0 », impossible à diagnostiquer. La sortie brute de
|
||||
PowerShell est maintenant reportée à l'utilisateur (le mot de passe ne
|
||||
transitant que par l'environnement, il n'y apparaît jamais).
|
||||
|
||||
## [0.1.3] - 2026-09-08
|
||||
|
||||
### Fixed
|
||||
|
||||
Reference in New Issue
Block a user