Index: src/common/read_config.c
===================================================================
RCS file: /cvsroot/slurm/slurm/src/common/read_config.c,v
retrieving revision 1.1.1.57.2.1
diff -u -r1.1.1.57.2.1 read_config.c
--- src/common/read_config.c	9 Dec 2011 15:29:06 -0000	1.1.1.57.2.1
+++ src/common/read_config.c	11 Jan 2012 22:48:31 -0000
@@ -2888,6 +2888,7 @@
 	    && (!strcmp(conf->proctrack_type,"proctrack/linuxproc")))
 		fatal("proctrack/linuxproc is incompatible with switch/elan");
 
+	conf->private_data = 0; /* Set to default before parsing PrivateData string */
 	if (s_p_get_string(&temp_str, "PrivateData", hashtbl)) {
 		if (strstr(temp_str, "account"))
 			conf->private_data |= PRIVATE_DATA_ACCOUNTS;
Index: src/common/slurm_protocol_defs.c
===================================================================
RCS file: /cvsroot/slurm/slurm/src/common/slurm_protocol_defs.c,v
retrieving revision 1.1.1.49
diff -u -r1.1.1.49 slurm_protocol_defs.c
--- src/common/slurm_protocol_defs.c	9 Dec 2011 13:14:33 -0000	1.1.1.49
+++ src/common/slurm_protocol_defs.c	11 Jan 2012 22:48:55 -0000
@@ -1601,7 +1601,7 @@
 {
 	if (str_len > 0)
 		str[0] = '\0';
-	if (str_len < 42) {
+	if (str_len < 55) {
 		error("private_data_string: output buffer too small");
 		return;
 	}
@@ -1633,7 +1633,12 @@
 			strcat(str, ",");
 		strcat(str, "accounts"); //9 len
 	}
-	// total len 42
+	if (private_data & PRIVATE_DATA_RESERVATIONS) {
+		if (str[0])
+			strcat(str, ",");
+		strcat(str, "reservations"); //13 len
+	}
+	// total len 55
 
 	if (str[0] == '\0')
 		strcat(str, "none");
Index: src/slurmctld/reservation.c
===================================================================
RCS file: /cvsroot/slurm/slurm/src/slurmctld/reservation.c,v
retrieving revision 1.1.1.34
diff -u -r1.1.1.34 reservation.c
--- src/slurmctld/reservation.c	9 Dec 2011 13:15:34 -0000	1.1.1.34
+++ src/slurmctld/reservation.c	11 Jan 2012 22:49:07 -0000
@@ -1878,7 +1878,7 @@
 		fatal("malloc: list_iterator_create");
 	while ((resv_ptr = (slurmctld_resv_t *) list_next(iter))) {
 		if ((slurmctld_conf.private_data & PRIVATE_DATA_RESERVATIONS)
-		    && !validate_slurm_user(uid)) {
+		    && !validate_operator(uid)) {
 			int i = 0;
 			for (i=0; i<resv_ptr->user_cnt; i++) {
 				if (resv_ptr->user_list[i] == uid)
Index: src/slurmdbd/read_config.c
===================================================================
RCS file: /cvsroot/slurm/slurm/src/slurmdbd/read_config.c,v
retrieving revision 1.1.1.27
diff -u -r1.1.1.27 read_config.c
--- src/slurmdbd/read_config.c	9 Dec 2011 13:14:28 -0000	1.1.1.27
+++ src/slurmdbd/read_config.c	11 Jan 2012 22:49:31 -0000
@@ -240,6 +240,8 @@
 		}
 		s_p_get_string(&slurmdbd_conf->pid_file, "PidFile", tbl);
 		s_p_get_string(&slurmdbd_conf->plugindir, "PluginDir", tbl);
+
+		slurmdbd_conf->private_data = 0; /* set default data visibility to all allowed */
 		if (s_p_get_string(&temp_str, "PrivateData", tbl)) {
 			if (strstr(temp_str, "account"))
 				slurmdbd_conf->private_data
