[rsyslog/f20] Add a patch to allow numeric specification of UIDs/GUIDs
Tomas Heinrich
theinric at fedoraproject.org
Fri Feb 21 17:16:49 UTC 2014
commit 4c79be69ea3dfa2bff1d3f3eca12fc580fce011a
Author: Tomas Heinrich <theinric at redhat.com>
Date: Wed Jan 8 16:43:27 2014 +0100
Add a patch to allow numeric specification of UIDs/GUIDs
rsyslog-7.4.8-numeric-uid.patch | 129 +++++++++++++++++++++++++++++++++++++++
rsyslog.spec | 4 +
2 files changed, 133 insertions(+), 0 deletions(-)
---
diff --git a/rsyslog-7.4.8-numeric-uid.patch b/rsyslog-7.4.8-numeric-uid.patch
new file mode 100644
index 0000000..c9f8310
--- /dev/null
+++ b/rsyslog-7.4.8-numeric-uid.patch
@@ -0,0 +1,129 @@
+From 032fcabdb7f3fc515d8155f48751271535df7b8e Mon Sep 17 00:00:00 2001
+From: Tomas Heinrich <theinric at redhat.com>
+Date: Thu, 5 Dec 2013 19:46:51 +0100
+Subject: [PATCH] Add directives for numerically specifying GIDs/UIDs
+
+The already present directives (FileOwner, FileGroup, DirOwner,
+DirGroup) translate names to numerical IDs, which depends on the user
+information being available during rsyslog's startup. This can fail if
+the information is obtained over a network or from a service such as
+SSSD. The new directives provide a way to specify the numerical IDs
+directly and bypass the lookup.
+---
+ doc/omfile.html | 12 ++++++++++++
+ doc/rsyslog_conf_global.html | 4 ++++
+ tools/omfile.c | 16 ++++++++++++++++
+ 3 files changed, 32 insertions(+)
+
+diff --git a/doc/omfile.html b/doc/omfile.html
+index 0f64f26..5f839fe 100644
+--- a/doc/omfile.html
++++ b/doc/omfile.html
+@@ -53,15 +53,27 @@
+ <li><strong>DirOwner </strong><br>
+ Set the file owner for directories newly created. Please note that this setting does not affect the owner of directories already existing. The parameter is a user name, for which the userid is obtained by rsyslogd during startup processing. Interim changes to the user mapping are not detected.<br></li><br>
+
++ <li><strong>DirOwnerNum </strong><br>
++ Set the file owner for directories newly created. Please note that this setting does not affect the owner of directories already existing. The parameter is a numerical ID, which is used regardless of whether the user actually exists. This can be useful if the user mapping is not available to rsyslog during startup.<br></li><br>
++
+ <li><strong>DirGroup </strong><br>
+ Set the group for directories newly created. Please note that this setting does not affect the group of directories already existing. The parameter is a group name, for which the groupid is obtained by rsyslogd on during startup processing. Interim changes to the user mapping are not detected.<br></li><br>
+
++ <li><strong>DirGroupNum </strong><br>
++ Set the group for directories newly created. Please note that this setting does not affect the group of directories already existing. The parameter is a numerical ID, which is used regardless of whether the group actually exists. This can be useful if the group mapping is not available to rsyslog during startup.<br></li><br>
++
+ <li><strong>FileOwner </strong><br>
+ Set the file owner for files newly created. Please note that this setting does not affect the owner of files already existing. The parameter is a user name, for which the userid is obtained by rsyslogd during startup processing. Interim changes to the user mapping are not detected.<br></li><br>
+
++ <li><strong>FileOwnerNum </strong><br>
++ Set the file owner for files newly created. Please note that this setting does not affect the owner of files already existing. The parameter is a numerical ID, which which is used regardless of whether the user actually exists. This can be useful if the user mapping is not available to rsyslog during startup.<br></li><br>
++
+ <li><strong>FileGroup </strong><br>
+ Set the group for files newly created. Please note that this setting does not affect the group of files already existing. The parameter is a group name, for which the groupid is obtained by rsyslogd during startup processing. Interim changes to the user mapping are not detected.<br></li><br>
+
++ <li><strong>$FileGroupNum </strong><br>
++ Set the group for files newly created. Please note that this setting does not affect the group of files already existing. The parameter is a numerical ID, which is used regardless of whether the group actually exists. This can be useful if the group mapping is not available to rsyslog during startup.<br></li><br>
++
+ <li><strong>DirCreateMode </strong>[defaul 0700]<br>
+ This is the same as $FileCreateMode, but for directories automatically generated.<br></li><br>
+
+diff --git a/doc/rsyslog_conf_global.html b/doc/rsyslog_conf_global.html
+index e48ed6d..b9a2ba2 100644
+--- a/doc/rsyslog_conf_global.html
++++ b/doc/rsyslog_conf_global.html
+@@ -136,7 +136,9 @@ our paper on <a href="multi_ruleset.html">using multiple rule sets in rsyslog</a
+ <li><a href="omfile.html"><b>$CreateDirs</b></a> [<b>on</b>/off] - create directories on an as-needed basis</li>
+ <li><a href="omfile.html"><b>$DirCreateMode</b></a></li>
+ <li><a href="omfile.html"><b>$DirGroup</b></a></li>
++<li><a href="omfile.html"><b>$DirGroupNum</b></a></li>
+ <li><a href="omfile.html"><b>$DirOwner</b></a></li>
++<li><a href="omfile.html"><b>$DirOwnerNum</b></a></li>
+ <li><a href="rsconf1_dropmsgswithmaliciousdnsptrrecords.html"><b>$DropMsgsWithMaliciousDnsPTRRecords</b></a></li>
+ <li><a href="rsconf1_droptrailinglfonreception.html"><b>$DropTrailingLFOnReception</b></a></li>
+ <li><a href="omfile.html"><b>$DynaFileCacheSize</b></a></li>
+@@ -148,7 +150,9 @@ our paper on <a href="multi_ruleset.html">using multiple rule sets in rsyslog</a
+ <li><a href="omfile.html"><b>$FailOnChownFailure</b></a></li>
+ <li><a href="omfile.html"><b>$FileCreateMode</b></a></li>
+ <li><a href="omfile.html"><b>$FileGroup</b></a></li>
++<li><a href="omfile.html"><b>$FileGroupNum</b></a></li>
+ <li><a href="omfile.html"><b>$FileOwner</b></a></li>
++<li><a href="omfile.html"><b>$FileOwnerNum</b></a></li>
+ <li><a href="rsconf1_generateconfiggraph.html"><b>$GenerateConfigGraph</b></a></li>
+ <li><a href="rsconf1_gssforwardservicename.html"><b>$GssForwardServiceName</b></a></li>
+ <li><a href="rsconf1_gsslistenservicename.html"><b>$GssListenServiceName</b></a></li>
+diff --git a/tools/omfile.c b/tools/omfile.c
+index 3dca347..fd14cb5 100644
+--- a/tools/omfile.c
++++ b/tools/omfile.c
+@@ -233,9 +233,13 @@ static struct cnfparamdescr actpdescr[] = {
+ { "flushontxend", eCmdHdlrBinary, 0 }, /* legacy: omfileflushontxend */
+ { "iobuffersize", eCmdHdlrSize, 0 }, /* legacy: omfileiobuffersize */
+ { "dirowner", eCmdHdlrUID, 0 }, /* legacy: dirowner */
++ { "dirownernum", eCmdHdlrInt, 0 }, /* legacy: dirownernum */
+ { "dirgroup", eCmdHdlrGID, 0 }, /* legacy: dirgroup */
++ { "dirgroupnum", eCmdHdlrInt, 0 }, /* legacy: dirgroupnum */
+ { "fileowner", eCmdHdlrUID, 0 }, /* legacy: fileowner */
++ { "fileownernum", eCmdHdlrInt, 0 }, /* legacy: fileownernum */
+ { "filegroup", eCmdHdlrGID, 0 }, /* legacy: filegroup */
++ { "filegroupnum", eCmdHdlrInt, 0 }, /* legacy: filegroupnum */
+ { "dircreatemode", eCmdHdlrFileCreateMode, 0 }, /* legacy: dircreatemode */
+ { "filecreatemode", eCmdHdlrFileCreateMode, 0 }, /* legacy: filecreatemode */
+ { "failonchownfailure", eCmdHdlrBinary, 0 }, /* legacy: failonchownfailure */
+@@ -1139,12 +1143,20 @@ CODESTARTnewActInst
+ pData->iIOBufSize = (int) pvals[i].val.d.n;
+ } else if(!strcmp(actpblk.descr[i].name, "dirowner")) {
+ pData->dirUID = (int) pvals[i].val.d.n;
++ } else if(!strcmp(actpblk.descr[i].name, "dirownernum")) {
++ pData->dirUID = (int) pvals[i].val.d.n;
+ } else if(!strcmp(actpblk.descr[i].name, "dirgroup")) {
+ pData->dirGID = (int) pvals[i].val.d.n;
++ } else if(!strcmp(actpblk.descr[i].name, "dirgroupnum")) {
++ pData->dirGID = (int) pvals[i].val.d.n;
+ } else if(!strcmp(actpblk.descr[i].name, "fileowner")) {
+ pData->fileUID = (int) pvals[i].val.d.n;
++ } else if(!strcmp(actpblk.descr[i].name, "fileownernum")) {
++ pData->fileUID = (int) pvals[i].val.d.n;
+ } else if(!strcmp(actpblk.descr[i].name, "filegroup")) {
+ pData->fileGID = (int) pvals[i].val.d.n;
++ } else if(!strcmp(actpblk.descr[i].name, "filegroupnum")) {
++ pData->fileGID = (int) pvals[i].val.d.n;
+ } else if(!strcmp(actpblk.descr[i].name, "dircreatemode")) {
+ pData->fDirCreateMode = (int) pvals[i].val.d.n;
+ } else if(!strcmp(actpblk.descr[i].name, "filecreatemode")) {
+@@ -1377,9 +1389,13 @@ INITLegCnfVars
+ CHKiRet(omsdRegCFSLineHdlr((uchar *)"omfileflushontxend", 0, eCmdHdlrBinary, NULL, &cs.bFlushOnTXEnd, STD_LOADABLE_MODULE_ID));
+ CHKiRet(omsdRegCFSLineHdlr((uchar *)"omfileiobuffersize", 0, eCmdHdlrSize, NULL, &cs.iIOBufSize, STD_LOADABLE_MODULE_ID));
+ CHKiRet(omsdRegCFSLineHdlr((uchar *)"dirowner", 0, eCmdHdlrUID, NULL, &cs.dirUID, STD_LOADABLE_MODULE_ID));
++ CHKiRet(omsdRegCFSLineHdlr((uchar *)"dirownernum", 0, eCmdHdlrInt, NULL, &cs.dirUID, STD_LOADABLE_MODULE_ID));
+ CHKiRet(omsdRegCFSLineHdlr((uchar *)"dirgroup", 0, eCmdHdlrGID, NULL, &cs.dirGID, STD_LOADABLE_MODULE_ID));
++ CHKiRet(omsdRegCFSLineHdlr((uchar *)"dirgroupnum", 0, eCmdHdlrInt, NULL, &cs.dirGID, STD_LOADABLE_MODULE_ID));
+ CHKiRet(omsdRegCFSLineHdlr((uchar *)"fileowner", 0, eCmdHdlrUID, NULL, &cs.fileUID, STD_LOADABLE_MODULE_ID));
++ CHKiRet(omsdRegCFSLineHdlr((uchar *)"fileownernum", 0, eCmdHdlrInt, NULL, &cs.fileUID, STD_LOADABLE_MODULE_ID));
+ CHKiRet(omsdRegCFSLineHdlr((uchar *)"filegroup", 0, eCmdHdlrGID, NULL, &cs.fileGID, STD_LOADABLE_MODULE_ID));
++ CHKiRet(omsdRegCFSLineHdlr((uchar *)"filegroupnum", 0, eCmdHdlrInt, NULL, &cs.fileGID, STD_LOADABLE_MODULE_ID));
+ CHKiRet(omsdRegCFSLineHdlr((uchar *)"dircreatemode", 0, eCmdHdlrFileCreateMode, NULL, &cs.fDirCreateMode, STD_LOADABLE_MODULE_ID));
+ CHKiRet(omsdRegCFSLineHdlr((uchar *)"filecreatemode", 0, eCmdHdlrFileCreateMode, NULL, &cs.fCreateMode, STD_LOADABLE_MODULE_ID));
+ CHKiRet(omsdRegCFSLineHdlr((uchar *)"createdirs", 0, eCmdHdlrBinary, NULL, &cs.bCreateDirs, STD_LOADABLE_MODULE_ID));
+--
+1.8.4.3
+
diff --git a/rsyslog.spec b/rsyslog.spec
index 3885508..120c995 100644
--- a/rsyslog.spec
+++ b/rsyslog.spec
@@ -30,6 +30,7 @@ Patch2: rsyslog-7.2.1-msg_c_nonoverwrite_merge.patch
Patch3: rsyslog-7.3.15-imuxsock-warning.patch
# merged upstream
Patch4: rsyslog-7.4.8-omjournal-warning.patch
+Patch5: rsyslog-7.4.8-numeric-uid.patch
BuildRequires: bison
BuildRequires: flex
@@ -249,6 +250,7 @@ of source ports.
%patch2 -p1
%patch3 -p1
%patch4 -p1
+%patch5 -p1
%build
%ifarch sparc64
@@ -483,6 +485,8 @@ done
- add missing defattr directives
- add rsyslog-7.4.8-omjournal-warning.patch to fix
a condition for issuing a warning in omjournal
+- add a patch to allow numeric specification of UIDs/GUIDs
+ rsyslog-7.4.8-numeric-uid.patch
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 7.4.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
More information about the scm-commits
mailing list