summaryrefslogtreecommitdiffstats
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)
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);
+ }
+