void hostap_remove_proc(local_info_t *local)
 {
-       if (local->proc != NULL) {
-#ifndef PRISM2_NO_STATION_MODES
-               remove_proc_entry("scan_results", local->proc);
-#endif /* PRISM2_NO_STATION_MODES */
-#ifdef PRISM2_IO_DEBUG
-               remove_proc_entry("io_debug", local->proc);
-#endif /* PRISM2_IO_DEBUG */
-               remove_proc_entry("pda", local->proc);
-               remove_proc_entry("aux_dump", local->proc);
-               remove_proc_entry("wds", local->proc);
-               remove_proc_entry("stats", local->proc);
-               remove_proc_entry("bss_list", local->proc);
-               remove_proc_entry("crypt", local->proc);
-#ifndef PRISM2_NO_PROCFS_DEBUG
-               remove_proc_entry("debug", local->proc);
-#endif /* PRISM2_NO_PROCFS_DEBUG */
-               if (hostap_proc != NULL)
-                       remove_proc_entry(local->proc->name, hostap_proc);
-       }
+       remove_proc_subtree(local->ddev->name, hostap_proc);
 }