Fossil SCM
If no password is supplied, give the user a single opportunity to enter the password (if they are on a tty) then fail the clone.
Commit
03ed08364b252a57cc2d59663df6962398284679
Parent
554d4caa5ab0444…
1 file changed
+5
-4
+5
-4
| --- src/xfer.c | ||
| +++ src/xfer.c | ||
| @@ -1248,17 +1248,18 @@ | ||
| 1248 | 1248 | if( blob_eq(&xfer.aToken[0],"error") && xfer.nToken==2 ){ |
| 1249 | 1249 | if( !cloneFlag || nCycle>0 ){ |
| 1250 | 1250 | char *zMsg = blob_terminate(&xfer.aToken[1]); |
| 1251 | 1251 | defossilize(zMsg); |
| 1252 | 1252 | if( strcmp(zMsg, "login failed")==0 ){ |
| 1253 | - if( !g.dontKeepUrl ) db_unset("last-sync-pw", 0); | |
| 1254 | - g.urlPasswd = 0; | |
| 1255 | - if( nCycle<2 ) go = 1; | |
| 1253 | + if( nCycle<2 ){ | |
| 1254 | + if( !g.dontKeepUrl ) db_unset("last-sync-pw", 0); | |
| 1255 | + go = 1; | |
| 1256 | + } | |
| 1256 | 1257 | }else{ |
| 1257 | 1258 | blob_appendf(&xfer.err, "\rserver says: %s", zMsg); |
| 1258 | 1259 | } |
| 1259 | - printf("\rServer Error: %s\n", zMsg); | |
| 1260 | + fossil_fatal("\rError: %s", zMsg); | |
| 1260 | 1261 | } |
| 1261 | 1262 | }else |
| 1262 | 1263 | |
| 1263 | 1264 | /* Unknown message */ |
| 1264 | 1265 | { |
| 1265 | 1266 |
| --- src/xfer.c | |
| +++ src/xfer.c | |
| @@ -1248,17 +1248,18 @@ | |
| 1248 | if( blob_eq(&xfer.aToken[0],"error") && xfer.nToken==2 ){ |
| 1249 | if( !cloneFlag || nCycle>0 ){ |
| 1250 | char *zMsg = blob_terminate(&xfer.aToken[1]); |
| 1251 | defossilize(zMsg); |
| 1252 | if( strcmp(zMsg, "login failed")==0 ){ |
| 1253 | if( !g.dontKeepUrl ) db_unset("last-sync-pw", 0); |
| 1254 | g.urlPasswd = 0; |
| 1255 | if( nCycle<2 ) go = 1; |
| 1256 | }else{ |
| 1257 | blob_appendf(&xfer.err, "\rserver says: %s", zMsg); |
| 1258 | } |
| 1259 | printf("\rServer Error: %s\n", zMsg); |
| 1260 | } |
| 1261 | }else |
| 1262 | |
| 1263 | /* Unknown message */ |
| 1264 | { |
| 1265 |
| --- src/xfer.c | |
| +++ src/xfer.c | |
| @@ -1248,17 +1248,18 @@ | |
| 1248 | if( blob_eq(&xfer.aToken[0],"error") && xfer.nToken==2 ){ |
| 1249 | if( !cloneFlag || nCycle>0 ){ |
| 1250 | char *zMsg = blob_terminate(&xfer.aToken[1]); |
| 1251 | defossilize(zMsg); |
| 1252 | if( strcmp(zMsg, "login failed")==0 ){ |
| 1253 | if( nCycle<2 ){ |
| 1254 | if( !g.dontKeepUrl ) db_unset("last-sync-pw", 0); |
| 1255 | go = 1; |
| 1256 | } |
| 1257 | }else{ |
| 1258 | blob_appendf(&xfer.err, "\rserver says: %s", zMsg); |
| 1259 | } |
| 1260 | fossil_fatal("\rError: %s", zMsg); |
| 1261 | } |
| 1262 | }else |
| 1263 | |
| 1264 | /* Unknown message */ |
| 1265 | { |
| 1266 |