about summary refs log tree commit diff
path: root/pkgs/servers
diff options
context:
space:
mode:
authorDerek Kulinski <d@kulinski.us>2019-08-07 04:15:10 -0700
committerDanylo Hlynskyi <abcz2.uprola@gmail.com>2019-08-07 14:15:10 +0300
commitb1d00b71b6dcf0d16bd0467d33ac09a70fb63387 (patch)
tree6c186498f19e18e31908a3f55b68813467167e00 /pkgs/servers
parent7d90a4c67b33cedbf0940612185df5d24517398c (diff)
downloadnixlib-b1d00b71b6dcf0d16bd0467d33ac09a70fb63387.tar
nixlib-b1d00b71b6dcf0d16bd0467d33ac09a70fb63387.tar.gz
nixlib-b1d00b71b6dcf0d16bd0467d33ac09a70fb63387.tar.bz2
nixlib-b1d00b71b6dcf0d16bd0467d33ac09a70fb63387.tar.lz
nixlib-b1d00b71b6dcf0d16bd0467d33ac09a70fb63387.tar.xz
nixlib-b1d00b71b6dcf0d16bd0467d33ac09a70fb63387.tar.zst
nixlib-b1d00b71b6dcf0d16bd0467d33ac09a70fb63387.zip
pgpool: 3.4.14 -> 4.0.5 (#66224)
Updated to PGPool-II 4.0.5 and modify the code to allow absolute path
for pool_passwd file.
Diffstat (limited to 'pkgs/servers')
-rw-r--r--pkgs/servers/sql/pgpool/default.nix8
-rw-r--r--pkgs/servers/sql/pgpool/pgpool-II-3.4.14-glibc-2.26.patch12
-rw-r--r--pkgs/servers/sql/pgpool/pgpool.patch23
3 files changed, 28 insertions, 15 deletions
diff --git a/pkgs/servers/sql/pgpool/default.nix b/pkgs/servers/sql/pgpool/default.nix
index 3fedf3fa8048..3db62aa491ce 100644
--- a/pkgs/servers/sql/pgpool/default.nix
+++ b/pkgs/servers/sql/pgpool/default.nix
@@ -1,15 +1,17 @@
 { stdenv, fetchurl, postgresql, openssl, pam ? null, libmemcached ? null }:
 
 stdenv.mkDerivation rec {
-  name = "pgpool-II-3.4.14";
+  pname = "pgpool-II";
+  version = "4.0.5";
+  name = "${pname}-${version}";
 
   src = fetchurl {
     name = "${name}.tar.gz";
     url = "http://www.pgpool.net/download.php?f=${name}.tar.gz";
-    sha256 = "1paak83f4lv48xckmf2znryrvhmdz86w4v97mcw2gxm50hcl74sw";
+    sha256 = "0v2g2ksikn10kxsa8i47gv0kbklrsscvlddza3caf522q1k0fic4";
   };
 
-  patches = [ ./pgpool-II-3.4.14-glibc-2.26.patch ];
+  patches = [ ./pgpool.patch ];
 
   buildInputs = [ postgresql openssl pam libmemcached ];
 
diff --git a/pkgs/servers/sql/pgpool/pgpool-II-3.4.14-glibc-2.26.patch b/pkgs/servers/sql/pgpool/pgpool-II-3.4.14-glibc-2.26.patch
deleted file mode 100644
index 6efffff0c6d9..000000000000
--- a/pkgs/servers/sql/pgpool/pgpool-II-3.4.14-glibc-2.26.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/src/watchdog/wd_lifecheck.c b/src/watchdog/wd_lifecheck.c
-index 1e72307..5cf68a3 100644
---- a/src/watchdog/wd_lifecheck.c
-+++ b/src/watchdog/wd_lifecheck.c
-@@ -26,6 +26,7 @@
- #include <ctype.h>
- #include <time.h>
- #include <string.h>
-+#include <stdint.h>
- #include <stdlib.h>
- #include <unistd.h>
- #include <netdb.h>
diff --git a/pkgs/servers/sql/pgpool/pgpool.patch b/pkgs/servers/sql/pgpool/pgpool.patch
new file mode 100644
index 000000000000..7c9d92a88bf7
--- /dev/null
+++ b/pkgs/servers/sql/pgpool/pgpool.patch
@@ -0,0 +1,23 @@
+diff --git a/src/main/main.c b/src/main/main.c
+index eec3c3e4..4169112b 100644
+--- a/src/main/main.c
++++ b/src/main/main.c
+@@ -337,10 +337,14 @@ main(int argc, char **argv)
+ 		char		dirnamebuf[POOLMAXPATHLEN + 1];
+ 		char	   *dirp;
+ 
+-		strlcpy(dirnamebuf, conf_file, sizeof(dirnamebuf));
+-		dirp = dirname(dirnamebuf);
+-		snprintf(pool_passwd, sizeof(pool_passwd), "%s/%s",
+-				 dirp, pool_config->pool_passwd);
++		if (pool_config->pool_passwd[0] != '/') {
++			strlcpy(dirnamebuf, conf_file, sizeof(dirnamebuf));
++			dirp = dirname(dirnamebuf);
++			snprintf(pool_passwd, sizeof(pool_passwd), "%s/%s",
++					 dirp, pool_config->pool_passwd);
++		} else
++			strlcpy(pool_passwd, pool_config->pool_passwd,
++				 sizeof(pool_passwd));
+ 		pool_init_pool_passwd(pool_passwd, POOL_PASSWD_R);
+ 	}
+