code: func SetNodeConfig(ctx *cli.Context, cfg *node.Config) {
  	SetP2PConfig(ctx, &cfg.P2P)
  	setIPC(ctx, cfg)
  	setHTTP(ctx, cfg)
  	setGraphQL(ctx, cfg)
  	setWS(ctx, cfg)
  	setNodeUserIdent(ctx, cfg)
  	setDataDir(ctx, cfg)
  
  	if ctx.GlobalIsSet(ExternalSignerFlag.Name) {
  		cfg.ExternalSigner = ctx.GlobalString(ExternalSignerFlag.Name)
  	}
  
  	if ctx.GlobalIsSet(KeyStoreDirFlag.Name) {
  		cfg.KeyStoreDir = ctx.GlobalString(KeyStoreDirFlag.Name)
  	}
  	if ctx.GlobalIsSet(LightKDFFlag.Name) {
  		cfg.UseLightweightKDF = ctx.GlobalBool(LightKDFFlag.Name)
  	}
  	if ctx.GlobalIsSet(NoUSBFlag.Name) {
  		cfg.NoUSB = ctx.GlobalBool(NoUSBFlag.Name)
  	}
  	if ctx.GlobalIsSet(InsecureUnlockAllowedFlag.Name) {
  		cfg.InsecureUnlockAllowed = ctx.GlobalBool(InsecureUnlockAllowedFlag.Name)
  	}
  }
docs: // SetNodeConfig applies node-related command line flags to the config.