libcurl does not support the rsync protocol.
From the libcurl FAQ: Section 3.21
3.21 Protocol xxx not supported or disabled in libcurl
When passing on a URL to curl to use, it may respond that the particular
protocol is not supported or disabled. The particular way this error message
is phrased is because curl doesn't make a distinction internally of whether
a particular protocol is not supported (i.e. never got any code added that
knows how to speak that protocol) or if it was explicitly disabled. curl can
be built to only support a given set of protocols, and the rest would then
be disabled or not supported.
Note that this error will also occur if you pass a wrongly spelled protocol
part as in "htpt://example.com" or as in the less evident case if you prefix
the protocol part with a space as in " http://example.com/".
libcurl doesn't know the rsync protocol at all, not even a hint. BUT, since it was designed to 'guess' the protocol from the designator in a URL, trying to use
rsync://blah.blah will give you the error you see, since it guesses you meant 'rsync', but it doesn't know that one, so it returns the error.
It'll give you the same error if you tried
lornix://blah.blah, I doubt I'm a file transfer protocol either. (If I am, please let me know!)
Libcurl does support an impressive set of protocols, but rsync isn't one of them.