Fossil SCM
The server should make an ONREMOTE entry for each igot card received from the client.
Commit
20a40056f1c58a30489d265f382eab85b9acd1a6c5783b9e1df074654f370719
Parent
3e2a9bc37335447…
1 file changed
+4
-2
+4
-2
| --- src/xfer.c | ||
| +++ src/xfer.c | ||
| @@ -1300,17 +1300,19 @@ | ||
| 1300 | 1300 | if( xfer.nToken>=2 |
| 1301 | 1301 | && blob_eq(&xfer.aToken[0], "igot") |
| 1302 | 1302 | && blob_is_hname(&xfer.aToken[1]) |
| 1303 | 1303 | ){ |
| 1304 | 1304 | if( isPush ){ |
| 1305 | + int rid = 0; | |
| 1305 | 1306 | if( xfer.nToken==2 || blob_eq(&xfer.aToken[2],"1")==0 ){ |
| 1306 | - rid_from_uuid(&xfer.aToken[1], 1, 0); | |
| 1307 | + rid = rid_from_uuid(&xfer.aToken[1], 1, 0); | |
| 1307 | 1308 | }else if( g.perm.Private ){ |
| 1308 | - rid_from_uuid(&xfer.aToken[1], 1, 1); | |
| 1309 | + rid = rid_from_uuid(&xfer.aToken[1], 1, 1); | |
| 1309 | 1310 | }else{ |
| 1310 | 1311 | server_private_xfer_not_authorized(); |
| 1311 | 1312 | } |
| 1313 | + if( rid ) remote_has(rid); | |
| 1312 | 1314 | } |
| 1313 | 1315 | }else |
| 1314 | 1316 | |
| 1315 | 1317 | |
| 1316 | 1318 | /* pull SERVERCODE PROJECTCODE |
| 1317 | 1319 |
| --- src/xfer.c | |
| +++ src/xfer.c | |
| @@ -1300,17 +1300,19 @@ | |
| 1300 | if( xfer.nToken>=2 |
| 1301 | && blob_eq(&xfer.aToken[0], "igot") |
| 1302 | && blob_is_hname(&xfer.aToken[1]) |
| 1303 | ){ |
| 1304 | if( isPush ){ |
| 1305 | if( xfer.nToken==2 || blob_eq(&xfer.aToken[2],"1")==0 ){ |
| 1306 | rid_from_uuid(&xfer.aToken[1], 1, 0); |
| 1307 | }else if( g.perm.Private ){ |
| 1308 | rid_from_uuid(&xfer.aToken[1], 1, 1); |
| 1309 | }else{ |
| 1310 | server_private_xfer_not_authorized(); |
| 1311 | } |
| 1312 | } |
| 1313 | }else |
| 1314 | |
| 1315 | |
| 1316 | /* pull SERVERCODE PROJECTCODE |
| 1317 |
| --- src/xfer.c | |
| +++ src/xfer.c | |
| @@ -1300,17 +1300,19 @@ | |
| 1300 | if( xfer.nToken>=2 |
| 1301 | && blob_eq(&xfer.aToken[0], "igot") |
| 1302 | && blob_is_hname(&xfer.aToken[1]) |
| 1303 | ){ |
| 1304 | if( isPush ){ |
| 1305 | int rid = 0; |
| 1306 | if( xfer.nToken==2 || blob_eq(&xfer.aToken[2],"1")==0 ){ |
| 1307 | rid = rid_from_uuid(&xfer.aToken[1], 1, 0); |
| 1308 | }else if( g.perm.Private ){ |
| 1309 | rid = rid_from_uuid(&xfer.aToken[1], 1, 1); |
| 1310 | }else{ |
| 1311 | server_private_xfer_not_authorized(); |
| 1312 | } |
| 1313 | if( rid ) remote_has(rid); |
| 1314 | } |
| 1315 | }else |
| 1316 | |
| 1317 | |
| 1318 | /* pull SERVERCODE PROJECTCODE |
| 1319 |