--- koi/libdata/kIKE/kJudge-orig.pm	2009-10-30 01:45:20.000000000 +0000
+++ koi/libdata/kIKE/kJudge.pm	2009-10-30 04:43:37.000000000 +0000
@@ -1182,28 +1182,32 @@ sub evaluate_sa_payload($$)
 	$str .= "\t$key: (received:$rcv_payload->{$key}, expected:$exp_payload->{$key}, comp: ne)";
 	push(@judgment, $str);
 
+
+        # Critical bit
+        $key = 'critical';
+        if ($rcv_payload->{$key} == $exp_payload->{$key}) {
+                $str = $ok_str;
+        }
+        else {
+                $str = $ng_str;
+                $result = undef;
+        }
+        $str .= "\t$key: (received:$rcv_payload->{$key}, expected:$exp_payload->{$key}, comp: eq)";
+        push(@judgment, $str);
+
+        #push(@output, \@judgment);
+
+
 	# RESERVED
 	$key = 'reserved';
-	if ($rcv_payload->{$key} == 0) {
-		$str = $ok_str;
-	}
-	else {
-		$str = $ng_str;
-		$result = undef;
-	}
-	$str .= "\t$key: (received:$rcv_payload->{$key}, expected:0, comp: eq)";
-	push(@judgment, $str);
-
-	# Critical bit
-	$key = 'critical';
-	if ($rcv_payload->{$key} == 0) {
+	if ($rcv_payload->{$key} == $exp_payload->{$key}) {
 		$str = $ok_str;
 	}
 	else {
 		$str = $ng_str;
 		$result = undef;
 	}
-	$str .= "\t$key: (received:$rcv_payload->{$key}, expected:0, comp: eq)";
+	$str .= "\t$key: (received:$rcv_payload->{$key}, expected:$exp_payload->{$key}, comp: eq)";
 	push(@judgment, $str);
 
 	push(@output, \@judgment);