81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
|
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
|
-
+
|
that responds. Nothing more.</p>
<h4>2.0.1 Encrypted Transport</h4>
<p>In the current implementation of Fossil, the server only
understands HTTP requests. The client can send either
clear-text HTTP requests or encrypted HTTPS requests. But when
HTTPS requests are sent, they first must be decrypted by a webserver
HTTPS requests are sent, they first must be decrypted by a web server
or proxy before being passed to the Fossil server. This limitation
may be relaxed in a future release.</p>
<h3>2.1 Server Identification</h3>
<p>The server is identified by a URL argument that accompanies the
push, pull, or sync command on the client. (As a convenience to
|
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
|
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
|
-
+
|
holds. The client will use this information to figure out which
unversioned files need to be synchronized.
The server might also send a uvigot card when it receives a uvgimme card
but its reply message size is already oversized and hence unable to hold
the usual uvfile reply.
<p>When a client receives a "uvigot" card, it checks to see if the
file needs to be transfered from client to server or from server to client.
file needs to be transferred from client to server or from server to client.
If a client-to-server transmission is needed, the client schedules that
transfer to occur on a subsequent HTTP request. If a server-to-client
transfer is needed, then the client sends a "uvgimme" card back to the
server to request the file content.
<h3>3.7 Gimme Cards</h3>
|
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
|
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
|
-
+
-
+
|
content on the server exactly matches the content on the client and
no further synchronization is required.
<li><p><b>uv-pull-only</b></i>
<p>A server sends the uv-pull-only pragma to the client in response
to a uv-hash pragma with a mismatched content hash argument. This
pragma indicates that there are differences in unversioned content
between the client and server but that content can only be transfered
between the client and server but that content can only be transferred
from server to client. The server is unwilling to accept content from
the client because the client login lacks the "write-unversioned"
permission.</p>
<li><p><b>uv-push-ok</b></i>
<p>A server sends the uv-push-ok pragma to the client in response
to a uv-hash pragma with a mismatched content hash argument. This
pragma indicates that there are differences in unversioned content
between the client and server and that content can only be transfered
between the client and server and that content can only be transferred
in either direction. The server is willing to accept content from
the client because the client login has the "write-unversioned"
permission.</p>
<li><p><b>ci-lock</b> <i>CHECKIN-HASH CLIENT-ID</i></p>
<p>A client sends the "ci-lock" pragma to the server to indicate
that it is about to add a new check-in as a child of the
|