lightninglabs / lightninglabs/lightning-node-connect

[Bug] Connection on Mobile Browser Failing

Open
#86 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug help wanted
Dominant language
Go
Stars
85
Forks
22
PR merge metrics
No merged PRs in 30d

Description

User reports attempting to connect via LNC on a mobile browser. Clean, new pairing phrase. Consistently does not work. Slack chat: https://lightningcommunity.slack.com/archives/C01A2MGARV0/p1698035238721209

Logs:

_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:16.533 [DBG] GRPC: [core] [Channel #1] Channel created
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:16.539 [DBG] GRPC: [core] [Channel #1] original dial target is: "mailbox.terminal.lightning.today:443"
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:16.546 [DBG] GRPC: [core] [Channel #1] parsed dial target is: {Scheme:mailbox.terminal.lightning.today Authority: URL:{Scheme:mailbox.terminal.lightning.today Opaque:443 User: Host: Path: RawPath: OmitHost:false ForceQuery:false RawQuery: Fragment: RawFragment:}}
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:16.550 [DBG] GRPC: [core] [Channel #1] fallback to scheme "passthrough"
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:16.555 [DBG] GRPC: [core] [Channel #1] parsed dial target is: {Scheme:passthrough Authority: URL:{Scheme:passthrough Opaque: User: Host: Path:/mailbox.terminal.lightning.today:443 RawPath: OmitHost:false ForceQuery:false RawQuery: Fragment: RawFragment:}}
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:16.560 [DBG] GRPC: [core] [Channel #1] Channel authority set to "lnd"
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:16.575 [DBG] GRPC: [core] [Channel #1] Resolver state updated: {
  "Addresses": [
    {
      "Addr": "mailbox.terminal.lightning.today:443",
      "ServerName": "",
      "Attributes": null,
      "BalancerAttributes": null,
      "Type": 0,
      "Metadata": null
    }
  ],
  "ServiceConfig": null,
  "Attributes": null
} (resolver returned new addresses)
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:16.583 [DBG] GRPC: [core] [Channel #1] Channel switches to new LB policy "pick_first"
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:16.588 [DBG] GRPC: [core] [Channel #1 SubChannel #2] Subchannel created
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:16.593 [DBG] GRPC: [core] [Channel #1] Channel Connectivity change to CONNECTING
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:16.600 [DBG] GRPC: [core] [Channel #1 SubChannel #2] Subchannel Connectivity change to CONNECTING
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:16.604 [DBG] GRPC: [core] [Channel #1 SubChannel #2] Subchannel picks a new address "mailbox.terminal.lightning.today:443" to connect
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:16.613 [DBG] MBOX: Client: Dialing...
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:16.610 [DBG] GRPC: [core] pickfirstBalancer: UpdateSubConnState: 0x1c0ae70, {CONNECTING <nil>}
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:16.623 [DBG] MBOX: New client conn, read_stream=ca177815664cfd499c4f7dacf15d7efb24d76efedd6571ffb99ad5c961a32df6de94fbb2c60b45fa7cc2bb9a9a7b1c5aec8df15996d1d2d9ccf2eff68bbd9fd0, write_stream=ca177815664cfd499c4f7dacf15d7efb24d76efedd6571ffb99ad5c961a32df6de94fbb2c60b45fa7cc2bb9a9a7b1c5aec8df15996d1d2d9ccf2eff68bbd9fd1
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:16.631 [DBG] MBOX: Client: Attempting to create send socket/stream
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:21.656 [DBG] MBOX: Client: Connected to send socket/stream
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:26.705 [DBG] MBOX: Client: receive mailbox initialized
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:26.836 [DBG] MBOX: Starting client handshake
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:38.412 [DBG] GRPC: [transport] newClientTransport: aborting due to connectCtx: context deadline exceeded
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:38.495 [DBG] MBOX: Closing client connection
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:38.493 [DBG] MBOX: Kicking off client handshake with client_key=03a0932dbaadf0ae52ec231582aa3cead13c7964d10c78ffb8ae489c444b9ca9fb
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:38.513 [DBG] MBOX: Client: got failure on receive socket/stream, re-trying: failed to read: context canceled
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:38.539 [DBG] MBOX: closing receive stream/socket
_app-57f2ed93e342eaf0.js:1 [Violation] 'message' handler took 11732ms
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:38.661 [DBG] MBOX: closing send stream/socket
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:38.769 [DBG] GRPC: [core] Creating new client transport to "{\n  \"Addr\": \"mailbox.terminal.lightning.today:443\",\n  \"ServerName\": \"lnd\",\n  \"Attributes\": null,\n  \"BalancerAttributes\": null,\n  \"Type\": 0,\n  \"Metadata\": null\n}": connection error: desc = "transport: authentication handshake failed: EOF"
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:38.774 [WRN] GRPC: [core] [Channel #1 SubChannel #2] grpc: addrConn.createTransport failed to connect to {
  "Addr": "mailbox.terminal.lightning.today:443",
  "ServerName": "lnd",
  "Attributes": null,
  "BalancerAttributes": null,
  "Type": 0,
  "Metadata": null
}. Err: connection error: desc = "transport: authentication handshake failed: EOF"
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:38.778 [DBG] GRPC: [core] [Channel #1 SubChannel #2] Subchannel Connectivity change to TRANSIENT_FAILURE
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:38.784 [DBG] GRPC: [core] pickfirstBalancer: UpdateSubConnState: 0x1c0ae70, {TRANSIENT_FAILURE connection error: desc = "transport: authentication handshake failed: EOF"}
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:38.788 [DBG] GRPC: [core] [Channel #1] Channel Connectivity change to TRANSIENT_FAILURE
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:39.790 [DBG] GRPC: [core] [Channel #1 SubChannel #2] Subchannel Connectivity change to IDLE
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:39.795 [DBG] GRPC: [core] pickfirstBalancer: UpdateSubConnState: 0x1c0ae70, {IDLE connection error: desc = "transport: authentication handshake failed: EOF"}
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:39.803 [DBG] GRPC: [core] [Channel #1] Channel Connectivity change to IDLE
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:39.810 [DBG] GRPC: [core] [Channel #1 SubChannel #2] Subchannel Connectivity change to CONNECTING
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:39.818 [DBG] GRPC: [core] [Channel #1 SubChannel #2] Subchannel picks a new address "mailbox.terminal.lightning.today:443" to connect
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:39.823 [DBG] MBOX: Dial: have existing mailbox connection, waiting
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:39.822 [DBG] GRPC: [core] pickfirstBalancer: UpdateSubConnState: 0x1c0ae70, {CONNECTING <nil>}
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:39.833 [DBG] GRPC: [core] [Channel #1] Channel Connectivity change to CONNECTING
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:39.831 [DBG] MBOX: Dial: done with existing conn
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:39.842 [DBG] MBOX: Client: Dialing...
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:39.846 [DBG] MBOX: Refreshing client conn, read_stream=ca177815664cfd499c4f7dacf15d7efb24d76efedd6571ffb99ad5c961a32df6de94fbb2c60b45fa7cc2bb9a9a7b1c5aec8df15996d1d2d9ccf2eff68bbd9fd0, write_stream=ca177815664cfd499c4f7dacf15d7efb24d76efedd6571ffb99ad5c961a32df6de94fbb2c60b45fa7cc2bb9a9a7b1c5aec8df15996d1d2d9ccf2eff68bbd9fd1
_app-57f2ed93e342eaf0.js:1 2023-10-23 11:00:39.852 [DBG] MBOX: Client: Attempting to create send socket/stream```

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The payload names no source files or tests. Start by reproducing the LNC pairing flow in a mobile browser and trace the WASM, gRPC, and mailbox handshake shown in the logs; done means the connection completes without the authentication-handshake EOF.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, grpc, wasm
Domain
mobile-dev, networking
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.