{"record":{"id":"cfb4e46b50490600","repo":"lyswhut/lx-music-desktop","slug":"blocked-ip","errorCode":null,"errorMessage":"Blocked IP","messagePattern":"Blocked IP","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/main/modules/sync/client/auth.ts","lineNumber":42,"sourceCode":"    console.log(err)\n    throw err\n  })\n\nconst codeAuth = async(urlInfo: LX.Sync.Client.UrlInfo, serverId: string, authCode: string) => {\n  let key = toMD5(authCode).substring(0, 16)\n  // const iv = Buffer.from(key.split('').reverse().join('')).toString('base64')\n  key = Buffer.from(key).toString('base64')\n  let { publicKey, privateKey } = await generateRsaKey()\n  publicKey = publicKey.replace(/\\n/g, '')\n    .replace('-----BEGIN PUBLIC KEY-----', '')\n    .replace('-----END PUBLIC KEY-----', '')\n  const msg = aesEncrypt(`${SYNC_CODE.authMsg}\\n${publicKey}\\n${getComputerName()}\\nlx_music_desktop`, key)\n  // console.log(msg, key)\n  return request(`${urlInfo.httpProtocol}//${urlInfo.hostPath}/ah`, { headers: { m: msg } }).then(async({ text, code }) => {\n    // console.log(text)\n    switch (text) {\n      case SYNC_CODE.msgBlockedIp:\n        throw new Error(SYNC_CODE.msgBlockedIp)\n      case SYNC_CODE.authFailed:\n        throw new Error(SYNC_CODE.authFailed)\n      default:\n        if (code != 200) throw new Error(SYNC_CODE.authFailed)\n    }\n    let msg\n    try {\n      msg = rsaDecrypt(Buffer.from(text, 'base64'), privateKey).toString()\n    } catch (err: any) {\n      log.error('[auth] codeAuth decryptMsg error', err.message)\n      throw new Error(SYNC_CODE.authFailed)\n    }\n    // console.log(msg)\n    if (!msg) return Promise.reject(new Error(SYNC_CODE.authFailed))\n    const info = JSON.parse(msg) as LX.Sync.ClientKeyInfo\n    void setSyncAuthKey(serverId, info)\n    return info\n  })","sourceCodeStart":24,"sourceCodeEnd":60,"githubUrl":"https://github.com/lyswhut/lx-music-desktop/blob/9c364b482e5621a1d38b50e8610d2fb974457e6e/src/main/modules/sync/client/auth.ts#L24-L60","documentation":"Error \"Blocked IP\" thrown in lyswhut/lx-music-desktop.","triggerScenarios":"Thrown at src/main/modules/sync/client/auth.ts:42 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"9c364b482e5621a1d38b50e8610d2fb974457e6e","analyzedAt":"2026-08-12T15:14:48.244Z","schemaVersion":2},"datasetVersion":"2026-08-12T18:17:37.767Z"}