diff --git a/scapy/utils6.py b/scapy/utils6.py
index ad75c0677c460c7136b3cd9efe79fb6f7e19a3b5..fd9a39a9471f93662d2863814bd99284bdde40d6 100644
--- a/scapy/utils6.py
+++ b/scapy/utils6.py
@@ -26,7 +26,7 @@ def construct_source_candidate_set(addr, plen, laddr, loname):
     """
 
     cset = []
-    if in6_isgladdr(addr):
+    if in6_isgladdr(addr) or in6_isuladdr(addr):
 	cset = filter(lambda x: x[1] == IPV6_ADDR_GLOBAL, laddr)
     elif in6_islladdr(addr):
 	cset = filter(lambda x: x[1] == IPV6_ADDR_LINKLOCAL, laddr)