Merge remote-tracking branch 'origin/feat/executability' into dev

This commit is contained in:
2026-09-04 18:13:34 +02:00
17 changed files with 147 additions and 41 deletions
+4 -1
View File
@@ -388,6 +388,10 @@ int parse_args(Config* config, int argc, char* argv[], int* positional_args,
} else if (opt_is(argv[i], "-M", "--preserve")) {
config->use_metadata = true;
log_message(LOG_LEVEL_INFO, "Enabled metadata preservation");
} else if (opt_is(argv[i], "-E", "--executability")) {
config->use_metadata = true;
config->use_executability = true;
log_message(LOG_LEVEL_INFO, "Enabled executable permission preservation");
} else if (opt_is(argv[i], "-f", "--sendfile")) {
config->use_sendfile = true;
log_message(LOG_LEVEL_INFO, "Enabled sendfile");
@@ -623,7 +627,6 @@ int main(int argc, char* argv[]) {
log_message(LOG_LEVEL_INFO, "Enabling metadata preservation for --delta");
config->use_metadata = true;
}
/* Initialize TLS if needed */
if (config->use_tls)
tls_global_init();
+1
View File
@@ -50,6 +50,7 @@ void print_usage(void) {
printf(" -q, --quiet Suppress non-error output\n");
printf(" --debug=FLAGS Fine-grained debug logging (use --debug=help for flags)\n");
printf(" -M, --preserve Preserve file metadata\n");
printf(" -E, --executability Preserve executable permission bits\n");
printf(" --chunk-size <n> Chunk size in bytes (default: %d)\n", DEFAULT_CHUNK_SIZE);
printf(" --source-dir <path> Source directory\n");
printf(" --dest-dir <path> Destination directory\n");