Você não precisa realmente olhar para o código-fonte para corrigir isso; o dispatcher executa os scripts em /etc/NetworkManager/dispatcher.d
até que seja concluído ou até que um deles retorne com um erro. Esse foi o caso de algumas versões, porque o distribuidor inicial ( 01ifupdown
) não entendeu os estados vpn-up
e vpn-down
(ou hostname
, even).
Você poderá ver o que está acontecendo nos registros em /var/log/syslog
; eles conterão uma linha como:
Nov 5 21:38:57 chris-laptop nm-dispatcher.action: Script '/etc/NetworkManager/dispatcher.d/01ifupdown' exited with error status 1.
Este problema específico foi corrigido agora; mas se você ainda tiver problemas, deve considerar o preenchimento de um bug ou as coisas óbvias, como verificar permissões (como se o script fosse executável).