iptables: blocking SAMBA traffic, but allowing from specific MAC addresses

My god, it took me hours to configure the following setup. I want to block SAMBA traffic to all other clients, but allow them from specific hosts by MAC address:
1/ I keep the INPUT chain to policy ACCEPT
2/ I allow traffic on specific MAC address
$ iptables -A INPUT --protocol tcp --destination-port 135:139 -m mac --mac-source ##REPLACE_BY_YOUR_MAC_ADDRESS## -j ACCEPT $ iptables -A INPUT --protocol tcp --source-port 135:139 -m mac --mac-source ##REPLACE_BY_YOUR_MAC_ADDRESS## -j ACCEPT $ iptables -A INPUT --protocol udp --destination-port 135:139 -m mac --mac-source ##REPLACE_BY_YOUR_MAC_ADDRESS## -j ACCEPT $ iptables -A INPUT --protocol udp --source-port 135:139 -m mac --mac-source ##REPLACE_BY_YOUR_MAC_ADDRESS## -j ACCEPT $ iptables -A INPUT --protocol tcp --destination-port 445 -m mac --mac-source ##REPLACE_BY_YOUR_MAC_ADDRESS## -j ACCEPT $ iptables -A INPUT --protocol tcp --source-port 445 -m mac --mac-source ##REPLACE_BY_YOUR_MAC_ADDRESS## -j ACCEPT $ iptables -A INPUT --protocol udp --destination-port 445 -m mac --mac-source ##REPLACE_BY_YOUR_MAC_ADDRESS## -j ACCEPT $ iptables -A INPUT --protocol udp --source-port 445 -m mac --mac-source ##REPLACE_BY_YOUR_MAC_ADDRESS## -j ACCEPT
3/ I deny all other traffic
$ iptables -A INPUT --protocol tcp --destination-port 135:139 -j DROP $ iptables -A INPUT --protocol tcp --source-port 135:139 -j DROP $ iptables -A INPUT --protocol udp --destination-port 135:139 -j DROP $ iptables -A INPUT --protocol udp --source-port 135:139 -j DROP $ iptables -A INPUT --protocol tcp --destination-port 445 -j DROP $ iptables -A INPUT --protocol tcp --source-port 445 -j DROP $ iptables -A INPUT --protocol udp --destination-port 445 -j DROP $ iptables -A INPUT --protocol udp --source-port 445 -j DROP





I came across this "bug" in PHP when I was using the