@@ -30,9 +30,18 @@ const ipVersionParser = (proxy, parsedProxy) => {
3030 }
3131} ;
3232const domainResolverParser = ( proxy , parsedProxy ) => {
33- if ( proxy . _domain_resolver ) {
33+ if ( ! proxy . _domain_resolver ) {
34+ return ;
35+ }
36+
37+ if ( typeof proxy . _domain_resolver === 'string' ) {
38+ parsedProxy . domain_resolver = {
39+ ...( parsedProxy . domain_resolver ?? { } ) ,
40+ server : proxy . _domain_resolver ,
41+ } ;
42+ } else {
3443 parsedProxy . domain_resolver = {
35- ...parsedProxy . domain_resolver ,
44+ ...( parsedProxy . domain_resolver ?? { } ) ,
3645 ...proxy . _domain_resolver ,
3746 } ;
3847 }
@@ -529,10 +538,7 @@ const getShadowTLSPluginOpts = (proxy = {}) => {
529538 if ( proxy . plugin === 'shadow-tls' && proxy [ 'plugin-opts' ] ) {
530539 return proxy [ 'plugin-opts' ] ;
531540 }
532- if (
533- proxy . type === 'snell' &&
534- proxy [ 'obfs-opts' ] ?. mode === 'shadow-tls'
535- ) {
541+ if ( proxy . type === 'snell' && proxy [ 'obfs-opts' ] ?. mode === 'shadow-tls' ) {
536542 return {
537543 host : proxy [ 'obfs-opts' ] . host ,
538544 password : proxy [ 'obfs-opts' ] . password ,
@@ -734,15 +740,9 @@ const snellParser = (proxy = {}) => {
734740 if ( parsedProxy . server_port < 0 || parsedProxy . server_port > 65535 )
735741 throw 'invalid port' ;
736742 if ( version != null ) parsedProxy . version = version ;
737- if (
738- proxy [ 'obfs-opts' ] ?. mode &&
739- proxy [ 'obfs-opts' ] . mode !== 'shadow-tls'
740- )
743+ if ( proxy [ 'obfs-opts' ] ?. mode && proxy [ 'obfs-opts' ] . mode !== 'shadow-tls' )
741744 parsedProxy . obfs_mode = proxy [ 'obfs-opts' ] . mode ;
742- if (
743- proxy [ 'obfs-opts' ] ?. host &&
744- proxy [ 'obfs-opts' ] ?. mode !== 'shadow-tls'
745- )
745+ if ( proxy [ 'obfs-opts' ] ?. host && proxy [ 'obfs-opts' ] ?. mode !== 'shadow-tls' )
746746 parsedProxy . obfs_host = proxy [ 'obfs-opts' ] . host ;
747747 if ( proxy . reuse && ( version == null || version >= 4 ) )
748748 parsedProxy . reuse = true ;
0 commit comments