]> git.ipfire.org Git - people/ms/network.git/blobdiff - src/functions/functions.ports
Cleanup code that deletes ports/zones
[people/ms/network.git] / src / functions / functions.ports
index ae619ababaa155729aeba28a3dc4676ad55a4020..f70adf638f24732697c9180224298c662a169fa0 100644 (file)
 #                                                                             #
 ###############################################################################
 
+ports_get_all() {
+       local port
+       for port in $(list_directory "${NETWORK_PORTS_DIR}"); do
+               if port_exists "${port}"; then
+                       print "${port}"
+               fi
+       done
+}
+
+# XXX TO BE REMOVED
 port_list() {
-       list_directory "${NETWORK_PORTS_DIR}"
+       ports_get_all "$@"
 }
 
 port_list_in_use() {
@@ -95,10 +105,6 @@ port_settings_write() {
        settings_write "$(port_file "${port}")" ${args}
 }
 
-ports_get_all() {
-       port_list
-}
-
 port_file() {
        local port="${1}"
        assert isset port
@@ -188,7 +194,13 @@ port_destroy() {
                return ${EXIT_ERROR}
        fi
 
-       rm -rf "${NETWORK_PORTS_DIR}/${port}"
+       if ! rm -rf "${NETWORK_PORTS_DIR}/${port}"; then
+               log ERROR "Could not destroy port ${port}"
+               return ${EXIT_ERROR}
+       fi
+
+       log INFO "Destroyed port ${port}"
+       return ${EXIT_OK}
 }
 
 port_create() {