Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
liblongpath-rsync
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
liblongpath
liblongpath-rsync
Commits
e5f1a96f
Commit
e5f1a96f
authored
Aug 11, 2007
by
Wayne Davison
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Added support for a %H escape in the value of the RSYNC_CONNECT_PROG
environment variable.
parent
eb7e7b24
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
36 additions
and
0 deletions
+36
-0
socket.c
socket.c
+36
-0
No files found.
socket.c
View file @
e5f1a96f
...
...
@@ -300,6 +300,42 @@ int open_socket_out_wrapped(char *host, int port, const char *bind_addr,
{
char
*
prog
=
getenv
(
"RSYNC_CONNECT_PROG"
);
if
(
strchr
(
prog
,
'%'
))
{
int
hlen
=
strlen
(
host
);
int
len
=
strlen
(
prog
)
+
1
;
char
*
f
,
*
t
;
for
(
f
=
prog
;
*
f
;
f
++
)
{
if
(
*
f
!=
'%'
)
continue
;
/* Compute more than enough room. */
if
(
f
[
1
]
==
'%'
)
f
++
;
else
len
+=
hlen
;
}
f
=
prog
;
if
(
!
(
prog
=
new_array
(
char
,
len
)))
out_of_memory
(
"open_socket_out_wrapped"
);
for
(
t
=
prog
;
*
f
;
f
++
)
{
if
(
*
f
==
'%'
)
{
switch
(
*++
f
)
{
case
'%'
:
/* Just skips the extra '%'. */
break
;
case
'H'
:
memcpy
(
t
,
host
,
hlen
);
t
+=
hlen
;
continue
;
default:
f
--
;
/* pass % through */
break
;
}
}
*
t
++
=
*
f
;
}
*
t
=
'\0'
;
}
if
(
verbose
>=
2
)
{
rprintf
(
FINFO
,
"%sopening tcp connection to %s port %d
\n
"
,
prog
?
"Using RSYNC_CONNECT_PROG instead of "
:
""
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment