Questions about the WPS Wifi on/off scripts

Installed successfully on a v1.20. I have noticed that the WPS/Wifi On/Off button turns off/on both the radios. But the code inside the wps script does not seem to be doing that.

root@OpenWrt:/etc/rc.button# cat wps
#!/bin/sh

wps_catch_credentials() {
        local iface ifaces ifc ifname ssid encryption key radio radios
        local found=0

        . /usr/share/libubox/jshn.sh
        ubus -S -t 30 listen wps_credentials | while read creds; do
                json_init
                json_load "$creds"
                json_select wps_credentials || continue
                json_get_vars ifname ssid key encryption
                local ifcname="$ifname"
                json_init
                json_load "$(ubus -S call network.wireless status)"
                json_get_keys radios
                for radio in $radios; do
                        json_select $radio
                        json_select interfaces
                        json_get_keys ifaces
                        for ifc in $ifaces; do
                                json_select $ifc
                                json_get_vars ifname
                                [ "$ifname" = "$ifcname" ] && {
                                        ubus -S call uci set "{\"config\":\"wireless\", \"type\":\"wifi-iface\",                \
                                                                \"match\": { \"device\": \"$radio\", \"encryption\": \"wps\" }, \
                                                                \"values\": { \"encryption\": \"$encryption\",                  \
                                                                                \"ssid\": \"$ssid\",                            \
                                                                                \"key\": \"$key\" } }"
                                        ubus -S call uci commit '{"config": "wireless"}'
                                        ubus -S call uci apply
                                }
                                json_select ..
                        done
                        json_select ..
                        json_select ..
                done
        done
}

if [ "$ACTION" = "released" ] && [ "$BUTTON" = "wps" ]; then
        # If the button was pressed for 3 seconds or more, trigger WPS on
        # wpa_supplicant only, no matter if hostapd is running or not.  If
        # was pressed for less than 3 seconds, try triggering on
        # hostapd. If there is no hostapd instance to trigger it on or WPS
        # is not enabled on them, trigger it on wpa_supplicant.
        if [ "$SEEN" -lt 3 ] ; then
                wps_done=0
                ubusobjs="$( ubus -S list hostapd.* )"
                for ubusobj in $ubusobjs; do
                        ubus -S call $ubusobj wps_start && wps_done=1
                done
                [ $wps_done = 0 ] || return 0
        fi
        wps_done=0
        ubusobjs="$( ubus -S list wpa_supplicant.* )"
        for ubusobj in $ubusobjs; do
                ifname="$(echo $ubusobj | cut -d'.' -f2 )"
                multi_ap=""
                if [ -e "/var/run/wpa_supplicant-${ifname}.conf.is_multiap" ]; then
                        ubus -S call $ubusobj wps_start '{ "multi_ap": true }' && wps_done=1
                else
                        ubus -S call $ubusobj wps_start && wps_done=1
                fi
        done
        [ $wps_done = 0 ] || wps_catch_credentials &
fi

return 0

So, anyone can explain me who is causing this behavior? :melting_face:

EDITED: probably the "rfkill" script is doing this, which probably is being mapped to the same button. I will check that and test if I can fix it there.