Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • gajim gajim
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 179
    • Issues 179
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 7
    • Merge requests 7
  • Deployments
    • Deployments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • gajim
  • gajimgajim
  • Issues
  • #10557

Closed
Open
Created May 12, 2021 by Tim Comsa@TimC

No file transfer - XEP-0260: Jingle SOCKS5 with proxy candidates

Versions:

  • OS: Win 10
  • Gajim: 1.3.1
  • GTK Version: 3.24.25
  • GLib Version: 2.66.2
  • PyGObject Version: 3.38.0
  • python-nbxmpp Version: 2.0.2
  • XMPP servers : Openfire 4.5.2

Environment:

  • 2 domainA & domainB servers connected together
    • with SOCKS5 proxy configured on both servers (SOCKS5 proxy activated in server option)
  • 1 Gajim client connected to domainA server
    • with firewall activated to block p2p transfer
  • 1 Gajim client connected to domainB server
    • with firewall activated to block p2p transfer

Steps to reproduce the problem:

  1. Initiator Gajim client requests to send file to responder Gajim client
  2. Responder Gajim client accepts the file transfer from initiator Gajim client
  3. Nothing happens (no error, transfer rate remains at: 0%)

Associated XEP extensions:

  • https://xmpp.org/extensions/xep-0260.html

Exchanges between clients:

  • Session-initiate with direct & domainA SOCKS5 proxy candidates: OK
  • Session-accept with direct & domainB SOCKS5 proxy candidates: OK
  • Connected to domainB SOCKS5 proxy from initiator: OK
  • Connected to domainA SOCKS5 proxy from responder: OK
  • Candidate-used with domainB SOCKS5 proxy from initiator: OK
  • Candidate-used with domainA SOCKS5 proxy from responder: OK
  • Ack candidate-used from responder: OK
  • Ack candidate-used from initiator: OK
  • Connected to domainB SOCKS5 proxy from responder (candidate chosen by the initiator shall be considered the nominated candidate): OK
  • Activate initiator to domainB SOCKS5 proxy from responder: OK
  • Activated to initiator from responder: OK
  • Ack activate from domainB SOCKS5 proxy to responder: OK
  • Ack activated to responder from initiator: OK
  • S5B Session : NOTHING SENT & RECEIVED Traces on responder Gajim: gajim.c.ged | Raise event: file-transfer-completed nbxmpp.idlequeue | read timeout set for fd XXX on 180 seconds
  • Terminate: NOTHING SENT & RECEIVED

Remarks:

  • Chat works between client A & client B and other services work
  • File transfer works with only 1 SOCKS5 proxy configured on server of initiator side BUT if the other side sends a file, the same behavior occurs (no transfer & no error)
  • File transfer works with firewall deactivated on both clients in order to use direct file transfer (in p2p)
  • File transfer works with 2 Spark clients with firewall activated on both clients (the XEP-0065 SOCKS5 Bytestreams extension seems to be used in place of the XEP-0260 Jingle SOCKS5 Bytestreams Transport Method extension)
Assignee
Assign to
Time tracking