freebsd-ports/databases/pgpool-II-23/files/patch-pcp_recovery_node.c
Jun Kuriyama b31009c33b - Upgrade to 2.1.
- Add patches (add -d argument for debug) to pcp tools (already
  committed to upstream).

PR:		ports/129182 (based on)
Submitted by:	mm
2008-12-31 15:10:50 +00:00

120 lines
2.8 KiB
C

Index: pcp/pcp_recovery_node.c
===================================================================
RCS file: /cvsroot/pgpool/pgpool-II/pcp/pcp_recovery_node.c,v
retrieving revision 1.3
diff -u -r1.3 pcp_recovery_node.c
--- pcp/pcp_recovery_node.c 12 Mar 2008 04:53:51 -0000 1.3
+++ pcp/pcp_recovery_node.c 29 Dec 2008 05:15:44 -0000
@@ -23,6 +23,7 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
+#include <unistd.h>
#include "pcp.h"
@@ -38,36 +39,47 @@
char user[MAX_USER_PASSWD_LEN];
char pass[MAX_USER_PASSWD_LEN];
int nodeID;
+ int ch;
- if (argc == 2 && (strcmp(argv[1], "-h") == 0) )
- {
- usage();
- exit(0);
+ while ((ch = getopt(argc, argv, "hd")) != -1) {
+ switch (ch) {
+ case 'd':
+ pcp_enable_debug();
+ break;
+
+ case 'h':
+ case '?':
+ default:
+ usage();
+ exit(0);
+ }
}
+ argc -= optind;
+ argv += optind;
- if (argc != 7)
+ if (argc != 6)
{
errorcode = INVALERR;
pcp_errorstr(errorcode);
myexit(errorcode);
}
- timeout = atol(argv[1]);
+ timeout = atol(argv[0]);
if (timeout < 0) {
errorcode = INVALERR;
pcp_errorstr(errorcode);
myexit(errorcode);
}
- if (strlen(argv[2]) >= MAX_DB_HOST_NAMELEN)
+ if (strlen(argv[1]) >= MAX_DB_HOST_NAMELEN)
{
errorcode = INVALERR;
pcp_errorstr(errorcode);
myexit(errorcode);
}
- strcpy(host, argv[2]);
+ strcpy(host, argv[1]);
- port = atoi(argv[3]);
+ port = atoi(argv[2]);
if (port <= 1024 || port > 65535)
{
errorcode = INVALERR;
@@ -75,30 +87,30 @@
myexit(errorcode);
}
- if (strlen(argv[4]) >= MAX_USER_PASSWD_LEN)
+ if (strlen(argv[3]) >= MAX_USER_PASSWD_LEN)
{
errorcode = INVALERR;
pcp_errorstr(errorcode);
myexit(errorcode);
}
- strcpy(user, argv[4]);
+ strcpy(user, argv[3]);
- if (strlen(argv[5]) >= MAX_USER_PASSWD_LEN)
+ if (strlen(argv[4]) >= MAX_USER_PASSWD_LEN)
{
errorcode = INVALERR;
pcp_errorstr(errorcode);
myexit(errorcode);
}
- strcpy(pass, argv[5]);
+ strcpy(pass, argv[4]);
- nodeID = atoi(argv[6]);
+ nodeID = atoi(argv[5]);
if (nodeID < 0 || nodeID > MAX_NUM_BACKENDS)
{
errorcode = INVALERR;
pcp_errorstr(errorcode);
myexit(errorcode);
}
-
+
pcp_set_timeout(timeout);
if (pcp_connect(host, port, user, pass))
@@ -123,8 +135,9 @@
usage(void)
{
fprintf(stderr, "pcp_recovery_node - recovery a node\n\n");
- fprintf(stderr, "Usage: pcp_recovery_node timeout hostname port# username password nodeID\n");
+ fprintf(stderr, "Usage: pcp_recovery_node [-d] timeout hostname port# username password nodeID\n");
fprintf(stderr, "Usage: pcp_recovery_node -h\n\n");
+ fprintf(stderr, " -d - enable debug message (optional)\n");
fprintf(stderr, " timeout - connection timeout value in seconds. command exits on timeout\n");
fprintf(stderr, " hostname - pgpool-II hostname\n");
fprintf(stderr, " port# - pgpool-II port number\n");