diff --git a/Radius/Packet.pm b/Radius/Packet.pm
index 941568ed36ebdadf3a1be417957ec831eee5ecae..7d1d2333275593d55b66c6397d7fea37cd74ac2e 100644
--- a/Radius/Packet.pm
+++ b/Radius/Packet.pm
@@ -67,7 +67,12 @@ sub set_vsattr   {
 	}    
     }
 
-    push @{$attr->{$name}}, $value, $rawValue;
+    # Check if we should be adding the raw value or not
+    if (defined($rawValue)) {
+	    push @{$attr->{$name}}, $value, $rawValue;
+    } else {
+	    push @{$attr->{$name}}, $value;
+    }
 }
 
 sub unset_vsattr {
@@ -432,7 +437,7 @@ sub pack {
       foreach my $datum (@{$self->vsattr($vendor, $attr)}) {
         my $vval = &{$vsapacker{$self->{'Dict'}->vsattr_type($vid, $attr)}}
         ($datum, $self->{'Dict'}->vsattr_num($vid, $attr), $vendor);
-        
+
         if ($vid == 429) {
 
       		# As pointed out by Quan Choi,