mirror of
https://github.com/RsyncProject/rsync.git
synced 2026-10-23 06:14:18 -04:00
Make sure that the batch-prefix string isn't overly long (avoiding
a potential problem in the batch-filename code).
This commit is contained in:
1 parent
981555bddb
commit
beb9368481
1 file changed
+8
-1
@@ -124,6 +124,7 @@ int quiet = 0;
|
||||
int always_checksum = 0;
|
||||
int list_only = 0;
|
||||
|
||||
#define MAX_BATCH_PREFIX_LEN 256 /* Must be less than MAXPATHLEN-13 */
|
||||
char *batch_prefix = NULL;
|
||||
|
||||
static int modify_window_set;
|
||||
@@ -602,6 +603,12 @@ int parse_arguments(int *argc, const char ***argv, int frommain)
|
||||
"write-batch and read-batch can not be used together\n");
|
||||
exit_cleanup(RERR_SYNTAX);
|
||||
}
|
||||
if (batch_prefix && strlen(batch_prefix) > MAX_BATCH_PREFIX_LEN) {
|
||||
rprintf(FERROR,
|
||||
"the batch_prefix string must be %d characters or less.\n",
|
||||
MAX_BATCH_PREFIX_LEN);
|
||||
exit_cleanup(RERR_SYNTAX);
|
||||
}
|
||||
|
||||
if (do_compression && (write_batch || read_batch)) {
|
||||
rprintf(FERROR,
|
||||
@@ -707,7 +714,7 @@ void server_options(char **args,int *argc)
|
||||
static char mwindow[30];
|
||||
static char bw[50];
|
||||
/* Leave room for ``--(write|read)-batch='' */
|
||||
static char fext[MAXPATHLEN + 15];
|
||||
static char fext[MAX_BATCH_PREFIX_LEN + 15];
|
||||
|
||||
int i, x;
|
||||
|
||||
|
||||
Reference in new issue
Block a user