Page MenuHomePhabricator

Commit archive via IPv6 not works
Closed, ResolvedPublicBUG

Description

See https://forum.vyos.net/showthread.php?tid=26219

I tried to use this options:
scp://<user>:<passwd>@[IPv6-address]/<dir>
and also:
scp://<user>:<passwd>@"hostname"/<dir>, where "hostname" was in /etc/hostname file and I was able to ping6 it.
But with both configurations it failed to send config.

And proposed solution

We found the solution to this:
Add -g parameter to SCP commands in file /etc/commit/post-hooks.d/02vyatta-commit-push.pl row 89 and 103. After this curl is able to correctly parse the url.
for example in version 1.1.8 it looks like this: $cmd = "curl -g -s -S -T $tmp_push_file $uri/$save_file"; (it is twice in script)

Details

Difficulty level
Unknown (require assessment)
Version
1.1.8
Why the issue appeared?
Will be filled on close

Event Timeline

syncer created this task.Dec 21 2017, 8:27 PM
syncer assigned this task to c-po.
syncer triaged this task as Normal priority.
syncer moved this task from Needs Triage to Backlog on the VyOS 1.1.x (1.1.9) board.
syncer added a subscriber: c-po.

@c-po can you look into this please

syncer moved this task from Need Triage to Backlog on the VyOS 1.2 Crux board.Dec 21 2017, 8:28 PM
c-po added a comment.Dec 22 2017, 5:04 PM

IPv6 address in scp://<user>:<passwd>@[IPv6-address]/<dir> looks like not properly escaped. Should be \[IPv6-address\].

CURL manpage

-g, --globoff
       This  option  switches  off the "URL globbing parser". When you set this option, you can specify URLs
       that contain the letters {}[] without having them being interpreted by curl itself. Note  that  these
       letters are not normal legal URL contents but they should be encoded according to the URI standard.
c-po added a comment.Dec 22 2017, 5:09 PM

Please wait for todays build and test again. Thanks for your support!

pasik added a subscriber: pasik.Dec 26 2017, 10:40 PM
c-po moved this task from Backlog to Finished on the VyOS 1.2 Crux board.Dec 27 2017, 12:01 PM
syncer closed this task as Resolved.