}
+# config_get_keys2()
+#
+# return hash with all defined config keys
+#
+# parameter:
+# - self
+# - config key 1
+# - config key 2
+# return:
+# - hash with config keys
+sub config_get_keys2 {
+ my $self = shift;
+ my $key1 = shift;
+ my $key2 = shift;
+
+ if (!defined($self->{config}->{$key1})) {
+ return undef;
+ }
+
+ if (!defined($self->{config}->{$key1}->{$key2})) {
+ return undef;
+ }
+
+ if (ref($self->{config}->{$key1}->{$key2}) eq '') {
+ # return value
+ return $self->{config}->{$key1}->{$key2};
+ }
+
+ if (ref($self->{config}->{$key1}->{$key2}) eq 'HASH') {
+ # return sorted hash
+ my $config = $self->{config}->{$key1}->{$key2};
+ my %config = %$config;
+ # returns an array with the values
+ return sort(keys(%config));
+ }
+
+ if (ref($self->{config}->{$key1}->{$key2}) eq 'ARRAY') {
+ die("FIXME: not yet implemented - required?\n");
+ }
+
+ return undef;
+}
+
+
# save_config()
#
# write the config to disk