+application_t *lookup_application(char *identifier);
+val_t *application_getconf(application_t *app, application_key key);
+char *application_name(application_t *app);
+gboolean application_seen(application_t *app, application_key key);
+amglue_export_tag(getconf,
+ lookup_application application_getconf application_name
+ application_seen application_seen
+);
+
+pp_script_t *lookup_pp_script(char *identifier);
+val_t *pp_script_getconf(pp_script_t *pps, pp_script_key key);
+char *pp_script_name(pp_script_t *pps);
+gboolean pp_script_seen(pp_script_t *app, pp_script_key key);
+amglue_export_tag(getconf,
+ lookup_pp_script pp_script_getconf pp_script_name
+ pp_script_seen pp_script_seen
+);
+
+device_config_t *lookup_device_config(char *identifier);
+val_t *device_config_getconf(device_config_t *pps, device_config_key key);
+char *device_config_name(device_config_t *pps);
+gboolean device_config_seen(device_config_t *app, device_config_key key);
+amglue_export_tag(getconf,
+ lookup_device_config device_config_getconf device_config_name
+ device_config_seen device_config_seen
+);
+
+changer_config_t *lookup_changer_config(char *identifier);
+val_t *changer_config_getconf(changer_config_t *pps, changer_config_key key);
+char *changer_config_name(changer_config_t *pps);
+gboolean changer_config_seen(changer_config_t *app, changer_config_key key);
+amglue_export_tag(getconf,
+ lookup_changer_config changer_config_getconf changer_config_name
+ changer_config_seen changer_config_seen
+);
+
+%perlcode %{
+our %subsection_names = (
+ "tapetype" => 1,
+ "dumptype" => 1,
+ "interface" => 1,
+ "holdingdisk" => 1,
+ "application-tool" => 1,
+ "script-tool" => 1,
+ "device" => 1,
+ "changer" => 1,
+);
+%}
+amglue_export_tag(getconf, %subsection_names);
+