Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Leap:42.1:Staging:C
logrotate
logrotate-3.7.8-autoext.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File logrotate-3.7.8-autoext.patch of Package logrotate
Index: config.c =================================================================== --- config.c.orig 2013-06-10 14:02:36.000000000 +0200 +++ config.c 2013-07-25 15:42:42.465060702 +0200 @@ -594,6 +594,7 @@ static int readConfigFile(const char *co char **scriptDest = NULL; struct logInfo *newlog = defConfig; char *start, *chptr; + char *compresscmd_base; char *dirName; struct group *group; struct passwd *pw = NULL; @@ -1245,6 +1246,20 @@ static int readConfigFile(const char *co message(MESS_DEBUG, "compress_prog is now %s\n", newlog->compress_prog); + compresscmd_base=strdup(basename(newlog->compress_prog)); + fprintf(stdout, "compress_ext is %s\n", newlog->compress_prog); + i=0; /* have to check whether we may do this! */ + /* we check whether we changed the compress_cmd. In case we use the apropriate extension + as listed in compress_cmd_list */ + while ((i>=0)&&(strcmp(compress_cmd_list[i][0], "EOLIST"))){ + if (0==strcmp(compress_cmd_list[i][0], compresscmd_base)){ + newlog->compress_ext=strdup((char *)compress_cmd_list[i][1]); + message(MESS_DEBUG, "compress_ext was changed to %s\n", newlog->compress_ext); + fprintf(stdout, "compress_ext was changed to %s\n", newlog->compress_ext); + i=-10; /* terminate loop! */ + } + i++; + } } else if (!strcmp(key, "uncompresscmd")) { freeLogItem (uncompress_prog); Index: logrotate.c =================================================================== --- logrotate.c.orig 2013-06-10 14:02:36.000000000 +0200 +++ logrotate.c 2013-07-25 15:30:36.687434418 +0200 @@ -85,6 +85,16 @@ unsigned int hashSize; int numLogs = 0; int debug = 0; char *mailCommand = DEFAULT_MAIL_COMMAND; +/* This is the declaration. Note the "2" is needed in the definition (logrotate.h), too! */ +const char * compress_cmd_list[][2] = { + {"gzip", ".gz"}, + {"bzip2", ".bz2"}, + {"xz", ".xz"}, + {"compress", ".Z"}, + {"zip", "zip"}, + {"EOLIST", "EOLIST"} /* end-marker */ +}; + time_t nowSecs = 0; static uid_t save_euid; static gid_t save_egid; Index: logrotate.h =================================================================== --- logrotate.h.orig 2013-06-10 14:02:36.000000000 +0200 +++ logrotate.h 2013-07-25 15:30:36.687434418 +0200 @@ -66,6 +66,9 @@ TAILQ_HEAD(logInfoHead, logInfo) logs; extern int numLogs; extern int debug; +/* This is the definition. Note we have to carry the "2" within the declaration (logrotate.c), too! */ +extern const char * compress_cmd_list[][2]; + int readAllConfigPaths(const char **paths); #if !defined(asprintf) && !defined(_FORTIFY_SOURCE) int asprintf(char **string_ptr, const char *format, ...); Index: test/test =================================================================== --- test/test.orig 2013-07-25 15:30:36.687434418 +0200 +++ test/test 2013-07-25 16:16:11.992044805 +0200 @@ -536,19 +536,6 @@ checkoutput <<EOF test.log 0 zero EOF -cleanup 18 - -# ------------------------------- Test 18 ------------------------------------ -preptest test.log 18 1 -$RLR test-config.18 --force - -checkoutput <<EOF -test.log 0 -test.log.1.gz 1 zero -EOF - -(echo "gzip -f -9") | diff -u - compress-args - cleanup 19 # ------------------------------- Test 19 ------------------------------------
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor