aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKen Raeburn <raeburn@mit.edu>2008-06-19 18:28:27 +0000
committerKen Raeburn <raeburn@mit.edu>2008-06-19 18:28:27 +0000
commit5f272c3775a8583e4aa3372bca6226f5b31271ce (patch)
tree0c8468032fd2f196c882ed9de582d614b98c4671
parent6b4eff89c41b1382de9153c7125fba96e1772d1e (diff)
downloadkrb5-5f272c3775a8583e4aa3372bca6226f5b31271ce.zip
krb5-5f272c3775a8583e4aa3372bca6226f5b31271ce.tar.gz
krb5-5f272c3775a8583e4aa3372bca6226f5b31271ce.tar.bz2
Add iprop port number and log file as config file parameters
git-svn-id: svn://anonsvn.mit.edu/krb5/branches/sun-iprop@20420 dc483132-0cff-0310-8789-dd5450dbe970
-rw-r--r--src/lib/kadm5/admin.h58
-rw-r--r--src/lib/kadm5/alt_prof.c20
2 files changed, 43 insertions, 35 deletions
diff --git a/src/lib/kadm5/admin.h b/src/lib/kadm5/admin.h
index dca50dd..9013305 100644
--- a/src/lib/kadm5/admin.h
+++ b/src/lib/kadm5/admin.h
@@ -108,35 +108,37 @@ typedef long kadm5_ret_t;
#define KADM5_REF_COUNT 0x080000
/* kadm5_config_params */
-#define KADM5_CONFIG_REALM 0x0000001
-#define KADM5_CONFIG_DBNAME 0x0000002
-#define KADM5_CONFIG_MKEY_NAME 0x0000004
-#define KADM5_CONFIG_MAX_LIFE 0x0000008
-#define KADM5_CONFIG_MAX_RLIFE 0x0000010
-#define KADM5_CONFIG_EXPIRATION 0x0000020
-#define KADM5_CONFIG_FLAGS 0x0000040
-#define KADM5_CONFIG_ADMIN_KEYTAB 0x0000080
-#define KADM5_CONFIG_STASH_FILE 0x0000100
-#define KADM5_CONFIG_ENCTYPE 0x0000200
-#define KADM5_CONFIG_ADBNAME 0x0000400
-#define KADM5_CONFIG_ADB_LOCKFILE 0x0000800
-/*#define KADM5_CONFIG_PROFILE 0x0001000*/
-#define KADM5_CONFIG_ACL_FILE 0x0002000
-#define KADM5_CONFIG_KADMIND_PORT 0x0004000
-#define KADM5_CONFIG_ENCTYPES 0x0008000
-#define KADM5_CONFIG_ADMIN_SERVER 0x0010000
-#define KADM5_CONFIG_DICT_FILE 0x0020000
-#define KADM5_CONFIG_MKEY_FROM_KBD 0x0040000
-#define KADM5_CONFIG_KPASSWD_PORT 0x0080000
-#define KADM5_CONFIG_OLD_AUTH_GSSAPI 0x0100000
-#define KADM5_CONFIG_NO_AUTH 0x0200000
-#define KADM5_CONFIG_AUTH_NOFALLBACK 0x0400000
+#define KADM5_CONFIG_REALM 0x00000001
+#define KADM5_CONFIG_DBNAME 0x00000002
+#define KADM5_CONFIG_MKEY_NAME 0x00000004
+#define KADM5_CONFIG_MAX_LIFE 0x00000008
+#define KADM5_CONFIG_MAX_RLIFE 0x00000010
+#define KADM5_CONFIG_EXPIRATION 0x00000020
+#define KADM5_CONFIG_FLAGS 0x00000040
+#define KADM5_CONFIG_ADMIN_KEYTAB 0x00000080
+#define KADM5_CONFIG_STASH_FILE 0x00000100
+#define KADM5_CONFIG_ENCTYPE 0x00000200
+#define KADM5_CONFIG_ADBNAME 0x00000400
+#define KADM5_CONFIG_ADB_LOCKFILE 0x00000800
+/*#define KADM5_CONFIG_PROFILE 0x00001000*/
+#define KADM5_CONFIG_ACL_FILE 0x00002000
+#define KADM5_CONFIG_KADMIND_PORT 0x00004000
+#define KADM5_CONFIG_ENCTYPES 0x00008000
+#define KADM5_CONFIG_ADMIN_SERVER 0x00010000
+#define KADM5_CONFIG_DICT_FILE 0x00020000
+#define KADM5_CONFIG_MKEY_FROM_KBD 0x00040000
+#define KADM5_CONFIG_KPASSWD_PORT 0x00080000
+#define KADM5_CONFIG_OLD_AUTH_GSSAPI 0x00100000
+#define KADM5_CONFIG_NO_AUTH 0x00200000
+#define KADM5_CONFIG_AUTH_NOFALLBACK 0x00400000
#ifdef notyet /* Novell */
-#define KADM5_CONFIG_KPASSWD_SERVER 0x0800000
+#define KADM5_CONFIG_KPASSWD_SERVER 0x00800000
#endif
-#define KADM5_CONFIG_IPROP_ENABLED 0x1000000
-#define KADM5_CONFIG_ULOG_SIZE 0x2000000
-#define KADM5_CONFIG_POLL_TIME 0x4000000
+#define KADM5_CONFIG_IPROP_ENABLED 0x01000000
+#define KADM5_CONFIG_ULOG_SIZE 0x02000000
+#define KADM5_CONFIG_POLL_TIME 0x04000000
+#define KADM5_CONFIG_IPROP_LOGFILE 0x08000000
+#define KADM5_CONFIG_IPROP_PORT 0x10000000
/*
* permission bits
*/
@@ -259,6 +261,8 @@ typedef struct _kadm5_config_params {
uint32_t iprop_ulogsize;
krb5_deltat iprop_poll_time;
char * iprop_logfile;
+/* char * iprop_server;*/
+ int iprop_port;
} kadm5_config_params;
/***********************************************************************
diff --git a/src/lib/kadm5/alt_prof.c b/src/lib/kadm5/alt_prof.c
index 5dd9fe4..365bfd3 100644
--- a/src/lib/kadm5/alt_prof.c
+++ b/src/lib/kadm5/alt_prof.c
@@ -382,7 +382,7 @@ get_string_param(char **param_out, char *param_in,
}
/*
* Similar, for (host-order) port number, if not already set in the
- * output field; default is required.
+ * output field; default_value==0 means no default.
*/
static void
get_port_param(int *param_out, int param_in,
@@ -403,7 +403,7 @@ get_port_param(int *param_out, int param_in,
!krb5_aprof_get_int32(aprofile, hierarchy, TRUE, &ivalue)) {
*param_out = ivalue;
*mask_out |= mask_bit;
- } else {
+ } else if (default_value) {
*param_out = default_value;
*mask_out |= mask_bit;
}
@@ -733,13 +733,17 @@ krb5_error_code kadm5_get_config_params(context, use_kdc_config,
}
}
- /* XXX */
- if (params.mask & KADM5_CONFIG_DBNAME) {
- if (asprintf(&params.iprop_logfile, "%s.ulog", params.dbname) < 0) {
- params.iprop_logfile = NULL;
+ if (!GET_STRING_PARAM(iprop_logfile, KADM5_CONFIG_IPROP_LOGFILE,
+ "iprop_logfile", NULL)) {
+ if (params.mask & KADM5_CONFIG_DBNAME) {
+ if (asprintf(&params.iprop_logfile, "%s.ulog", params.dbname) >= 0) {
+ params.mask |= KADM5_CONFIG_IPROP_LOGFILE;
+ }
}
- } else
- params.iprop_logfile = NULL;
+ }
+
+ GET_PORT_PARAM(iprop_port, KADM5_CONFIG_IPROP_PORT,
+ "iprop_port", 0);
hierarchy[2] = "sunw_dbprop_master_ulogsize";