#FIG 3.2 Produced by xfig version 3.2.5-alpha5 Portrait Center Metric Letter 100.00 Single -2 1200 2 6 4500 3870 6255 4590 2 2 0 2 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 4545 3915 6210 3915 6210 4545 4545 4545 4545 3915 4 1 0 50 -1 0 12 0.0000 4 180 1470 5310 4185 examine isa_xchg\001 -6 6 5445 5085 7200 5805 2 2 0 2 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 5490 5130 7155 5130 7155 5760 5490 5760 5490 5130 4 1 0 50 -1 0 12 0.0000 4 165 1290 6255 5400 find/create state\001 4 1 0 50 -1 0 12 0.0000 4 180 510 6255 5625 object\001 -6 6 4500 6300 6255 7020 2 2 0 2 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 4545 6345 6210 6345 6210 6975 4545 6975 4545 6345 4 1 0 50 -1 0 12 0.0000 4 165 1275 5310 6615 determine valid\001 4 1 0 50 -1 0 12 0.0000 4 135 855 5355 6840 transitions\001 -6 6 4500 7560 6255 8280 2 2 0 2 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 4545 7605 6210 7605 6210 8235 4545 8235 4545 7605 4 1 0 50 -1 0 12 0.0000 4 195 900 5310 7875 verify state\001 4 1 0 50 -1 0 12 0.0000 4 180 1350 5355 8100 is not suspended\001 -6 6 4500 8865 6255 9585 2 2 0 2 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 4545 8910 6210 8910 6210 9540 4545 9540 4545 8910 4 1 0 50 -1 0 12 0.0000 4 195 1200 5310 9180 decrypt packet\001 4 1 0 50 -1 0 12 0.0000 4 195 1095 5355 9405 if appropriate\001 -6 6 4500 9495 6255 10890 6 4500 10170 6255 10890 2 2 0 2 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 4545 10215 6210 10215 6210 10845 4545 10845 4545 10215 4 1 0 50 -1 0 12 0.0000 4 165 1155 5310 10485 calculate hash\001 4 1 0 50 -1 0 12 0.0000 4 195 1095 5355 10710 if appropriate\001 -6 2 1 0 2 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 2 0 2.00 120.00 240.00 4860 9540 4860 10170 -6 6 4500 10800 6255 12195 2 1 0 2 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 2 0 2.00 120.00 240.00 4860 10845 4860 11475 2 2 0 2 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 4545 11520 6210 11520 6210 12150 4545 12150 4545 11520 4 1 0 50 -1 0 12 0.0000 4 195 1335 5310 11790 enforce ordering\001 4 1 0 50 -1 0 12 0.0000 4 195 945 5355 12015 of payloads\001 -6 6 3510 12960 5265 13680 2 2 0 2 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 3555 13005 5220 13005 5220 13635 3555 13635 3555 13005 4 1 0 50 -1 0 12 0.0000 4 195 1455 4320 13275 state specific func\001 -6 6 3510 13590 5265 14985 2 1 0 2 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 2 0 2.00 120.00 240.00 3870 13635 3870 14265 2 2 0 2 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 3555 14310 5220 14310 5220 14940 3555 14940 3555 14310 4 1 0 50 -1 0 12 0.0000 4 195 1335 4320 14580 complete_state_\001 4 1 0 50 -1 0 12 0.0000 4 180 900 4365 14805 transition()\001 -6 6 5040 15660 6795 16380 2 2 0 2 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 5085 15705 6750 15705 6750 16335 5085 16335 5085 15705 4 1 0 50 -1 0 12 0.0000 4 165 1155 5850 15975 STF_IGNORE\001 -6 6 5040 16965 6795 17685 2 2 0 2 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 5085 17010 6750 17010 6750 17640 5085 17640 5085 17010 4 1 0 50 -1 0 12 0.0000 4 165 1275 5850 17280 STF_SUSPEND\001 -6 6 5040 18405 6795 19125 2 2 0 2 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 5085 18450 6750 18450 6750 19080 5085 19080 5085 18450 4 1 0 50 -1 0 12 0.0000 4 165 705 5850 18720 STF_OK\001 -6 6 5040 19890 6795 20610 2 2 0 2 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 5085 19935 6750 19935 6750 20565 5085 20565 5085 19935 4 1 0 50 -1 0 12 0.0000 4 165 1050 5850 20205 STF_FATAL\001 -6 6 5040 21285 6795 22005 2 2 0 2 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 5085 21330 6750 21330 6750 21960 5085 21960 5085 21330 4 1 0 50 -1 0 8 0.0000 4 105 1575 5850 21600 STF_INTERNAL_ERROR\001 -6 6 5040 23895 6795 24615 2 2 0 2 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 5085 23940 6750 23940 6750 24570 5085 24570 5085 23940 4 1 0 50 -1 0 12 0.0000 4 165 855 5850 24210 STF_FAIL\001 -6 6 5040 22500 6795 23220 2 2 0 2 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 5085 22545 6750 22545 6750 23175 5085 23175 5085 22545 4 1 0 50 -1 0 7 0.0000 4 90 1560 5850 22815 STF_TOO_MUCH_CRYPTO\001 -6 6 7875 19080 9630 19800 2 2 0 2 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 7920 19125 9585 19125 9585 19755 7920 19755 7920 19125 4 1 0 50 -1 0 12 0.0000 4 195 1140 8685 19395 send_packet()\001 -6 6 6705 12960 8460 13680 2 2 0 2 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 6750 13005 8415 13005 8415 13635 6750 13635 6750 13005 4 1 0 50 -1 0 12 0.0000 4 195 1200 7515 13275 encrypt packet\001 -6 6 900 12960 2655 13680 2 2 0 2 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 945 13005 2610 13005 2610 13635 945 13635 945 13005 4 1 0 50 -1 0 12 0.0000 4 135 1050 1710 13275 continuation\001 -6 6 3510 -180 5265 540 2 2 0 2 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 3555 -135 5220 -135 5220 495 3555 495 3555 -135 4 1 0 50 -1 0 12 0.0000 4 195 1110 4320 135 read_packet()\001 -6 6 3510 1170 5265 1890 2 2 0 2 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 3555 1215 5220 1215 5220 1845 3555 1845 3555 1215 4 1 0 50 -1 0 12 0.0000 4 195 1365 4320 1485 process_packet()\001 -6 6 4500 2520 7740 3240 2 2 0 2 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 4545 2565 7695 2565 7695 3195 4545 3195 4545 2565 4 1 0 50 -1 0 12 0.0000 4 195 2550 6030 2970 de-marshal payloads (in_struct)\001 -6 6 9000 3195 11520 3825 2 2 1 1 4 7 47 -1 -1 4.000 0 0 7 0 0 5 9000 3195 11520 3195 11520 3825 9000 3825 9000 3195 4 1 4 47 -1 0 12 0.0000 4 180 1815 10395 3600 proc recvRawMessage\001 -6 6 7920 12150 10440 12780 2 2 1 1 4 7 47 -1 -1 4.000 0 0 7 0 0 5 7920 12150 10440 12150 10440 12780 7920 12780 7920 12150 4 1 4 47 -1 0 12 0.0000 4 180 1395 9315 12555 proc changeState\001 -6 6 7875 13860 10395 14490 2 2 1 1 4 7 47 -1 -1 4.000 0 0 7 0 0 5 7875 13860 10395 13860 10395 14490 7875 14490 7875 13860 4 1 4 47 -1 0 12 0.0000 4 180 1305 9270 14265 proc preEncrypt\001 -6 6 11835 19260 14355 19890 2 2 1 1 4 7 47 -1 -1 4.000 0 0 7 0 0 5 11835 19260 14355 19260 14355 19890 11835 19890 11835 19260 4 1 4 47 -1 0 12 0.0000 4 180 1485 13230 19665 proc sixtySeconds\001 -6 6 7920 18135 10440 18765 2 2 1 1 4 7 47 -1 -1 4.000 0 0 7 0 0 5 7920 18135 10440 18135 10440 18765 7920 18765 7920 18135 4 1 4 47 -1 0 12 0.0000 4 180 1590 9315 18540 proc avoidEmitting\001 -6 6 7920 14940 10440 15570 2 2 1 1 4 7 47 -1 -1 4.000 0 0 7 0 0 5 7920 14940 10440 14940 10440 15570 7920 15570 7920 14940 4 1 4 47 -1 0 12 0.0000 4 195 1470 9315 15345 proc adjustFailure\001 -6 6 7920 8190 10440 8820 2 2 1 1 4 7 47 -1 -1 4.000 0 0 7 0 0 5 7920 8190 10440 8190 10440 8820 7920 8820 7920 8190 4 1 4 47 -1 0 12 0.0000 4 180 1305 9315 8595 proc preDecrypt\001 -6 6 4860 10755 10440 11385 6 7920 10755 10440 11385 2 2 1 1 4 7 47 -1 -1 4.000 0 0 7 0 0 5 7920 10755 10440 10755 10440 11385 7920 11385 7920 10755 4 1 4 47 -1 0 12 0.0000 4 180 1455 9315 11160 proc recvMessage\001 -6 2 1 1 1 4 7 47 -1 -1 4.000 0 0 7 1 0 2 0 0 1.00 60.00 120.00 4860 10980 7920 11025 2 1 1 1 4 7 47 -1 -1 4.000 0 0 7 1 0 2 0 0 1.00 60.00 120.00 7920 11205 4860 11205 -6 6 7920 9540 10440 10170 2 2 1 1 4 7 47 -1 -1 4.000 0 0 7 0 0 5 7920 9540 10440 9540 10440 10170 7920 10170 7920 9540 4 1 4 47 -1 0 12 0.0000 4 180 1395 9315 9945 proc postDecrypt\001 -6 6 7920 20475 10440 21105 2 2 1 1 4 7 47 -1 -1 4.000 0 0 7 0 0 5 7920 20475 10440 20475 10440 21105 7920 21105 7920 20475 4 1 4 47 -1 0 12 0.0000 4 180 1455 9315 20880 proc adjustTimers\001 -6 6 7875 21555 9630 22275 2 2 0 2 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 7920 21600 9585 21600 9585 22230 7920 22230 7920 21600 4 1 0 50 -1 0 12 0.0000 4 150 765 8685 21870 set timers\001 -6 2 1 0 2 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 2 0 2.00 120.00 240.00 1890 1755 1890 5265 2 1 0 2 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 2 0 2.00 120.00 240.00 4860 1845 4860 2565 2 1 0 2 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 2 0 2.00 120.00 240.00 4860 6975 4860 7605 2 1 0 2 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 2 0 2.00 120.00 240.00 4860 8235 4860 8865 2 1 0 2 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 2 0 2.00 120.00 240.00 3870 1845 3870 12960 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 3 1 0 1.00 60.00 120.00 4050 14940 4050 15975 5085 15975 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 3 1 0 1.00 60.00 120.00 4050 14940 4050 17325 5085 17325 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 3 1 0 1.00 60.00 120.00 4050 17865 4050 20250 5085 20250 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 3 1 0 1.00 60.00 120.00 4050 19215 4050 21600 5085 21600 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 3 1 0 1.00 60.00 120.00 4050 20475 4050 22860 5085 22860 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 3 1 0 1.00 60.00 120.00 4050 21870 4050 24255 5085 24255 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 3 1 0 1.00 60.00 120.00 4050 16335 4050 18720 5085 18720 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 3 1 0 1.00 60.00 120.00 6120 19080 6120 19395 7920 19395 2 1 1 1 0 7 50 -1 -1 4.000 0 0 -1 1 0 2 1 0 1.00 60.00 120.00 5220 13140 6750 13140 2 1 1 1 0 7 50 -1 -1 4.000 0 0 -1 1 0 2 1 0 1.00 60.00 120.00 6705 13500 5220 13500 2 1 0 2 0 7 50 -1 -1 6.000 0 0 -1 1 0 2 2 0 2.00 120.00 240.00 2610 13230 3555 13230 2 1 2 2 0 7 50 -1 -1 4.500 0 0 -1 1 0 3 1 1 2.00 120.00 240.00 5040 17550 1485 17550 1485 13635 2 1 0 2 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 2 0 2.00 120.00 240.00 4320 -810 4320 -180 2 1 0 2 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 2 0 2.00 120.00 240.00 4320 495 4320 1215 2 1 0 2 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 2 0 2.00 120.00 240.00 4860 4545 4860 6345 2 1 0 2 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 2 0 2.00 120.00 240.00 5850 4545 5850 5130 2 1 0 2 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 2 0 2.00 120.00 240.00 4905 3195 4860 3915 2 1 1 1 4 7 47 -1 -1 4.000 0 0 7 1 0 3 0 0 1.00 60.00 120.00 7695 2745 9450 2745 9450 3195 2 1 1 1 4 7 47 -1 -1 4.000 0 0 7 1 0 3 0 0 1.00 60.00 120.00 9045 3555 5940 3555 5940 3915 2 1 1 1 4 7 47 -1 -1 4.000 0 0 7 1 0 2 0 0 1.00 60.00 120.00 3870 12285 7920 12420 2 1 1 1 4 7 47 -1 -1 4.000 0 0 7 1 0 3 0 0 1.00 60.00 120.00 7920 12555 4275 12690 4275 13005 2 1 1 1 4 7 47 -1 -1 4.000 0 0 7 1 0 3 0 0 1.00 60.00 120.00 7470 13680 7470 14130 7875 14130 2 1 1 1 4 7 47 -1 -1 4.000 0 0 7 1 0 3 0 0 1.00 60.00 120.00 7875 14265 7155 14265 7155 13680 2 1 1 1 4 7 47 -1 -1 4.000 0 0 7 1 0 3 0 0 1.00 60.00 120.00 10395 14175 13230 14175 13230 19260 2 1 1 1 4 7 47 -1 -1 4.000 0 0 7 1 0 3 0 0 1.00 60.00 120.00 10485 15255 12600 15255 12600 19260 2 1 1 1 4 7 47 -1 -1 4.000 0 0 7 1 0 3 0 0 1.00 60.00 120.00 10485 18450 12330 18450 12330 19260 2 1 1 1 4 7 47 -1 -1 4.000 0 0 7 1 0 2 0 0 1.00 60.00 120.00 11835 19485 9585 19485 2 1 1 1 4 7 47 -1 -1 4.000 0 0 7 1 0 3 0 0 1.00 60.00 120.00 7245 19485 7245 18450 7920 18405 2 1 1 1 4 7 47 -1 -1 4.000 0 0 7 1 0 3 0 0 1.00 60.00 120.00 7920 18540 7470 18540 7515 19440 2 1 1 1 4 7 47 -1 -1 4.000 0 0 7 1 0 2 0 0 1.00 60.00 120.00 7920 15345 4050 15525 2 1 1 1 4 7 47 -1 -1 4.000 0 0 7 1 0 2 0 0 1.00 60.00 120.00 4050 15210 7920 15210 2 1 1 1 4 7 47 -1 -1 4.000 0 0 7 1 0 2 0 0 1.00 60.00 120.00 4860 8331 7920 8376 2 1 1 1 4 7 47 -1 -1 4.000 0 0 7 1 0 2 0 0 1.00 60.00 120.00 7920 8505 4860 8505 2 1 1 1 4 7 47 -1 -1 4.000 0 0 7 1 0 2 0 0 1.00 60.00 120.00 4860 9699 7920 9744 2 1 1 1 4 7 47 -1 -1 4.000 0 0 7 1 0 2 0 0 1.00 60.00 120.00 7920 9945 4860 9945 2 1 1 1 4 7 47 -1 -1 4.000 0 0 7 1 0 2 0 0 1.00 60.00 120.00 9180 19755 9180 20475 2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 1 0 1.00 60.00 120.00 8235 19755 8235 21600 2 1 1 1 4 7 47 -1 -1 4.000 0 0 7 1 0 2 0 0 1.00 60.00 120.00 9180 21105 9180 21600 4 2 0 50 -1 0 12 0.0000 4 195 1800 3150 1575 msg_digest populated\001 4 0 0 50 -1 0 12 0.0000 4 150 1440 2070 5355 md->st connected\001 4 0 0 50 -1 0 12 0.0000 4 165 1140 4230 13950 returns STF_*\001 4 2 0 50 -1 0 12 0.0000 4 195 1005 1395 14850 DNS lookup\001 4 2 0 50 -1 0 12 0.0000 4 165 1230 1395 15105 DH calculation\001 4 2 0 50 -1 0 12 0.0000 4 195 1260 1395 15360 g^x calculation\001 4 2 0 50 -1 0 12 0.0000 4 195 1245 1395 15615 (LDAP lookup)\001 4 2 0 50 -1 0 12 0.0000 4 195 1305 1395 15870 (RSA sig check)\001 4 2 0 50 -1 0 12 0.0000 4 180 1020 1395 16125 (radius/pam)\001 4 0 0 50 -1 0 12 0.0000 4 180 2265 6930 17325 md -> st->st_suspended_md\001 4 0 0 50 -1 0 12 0.0000 4 165 705 8370 19935 md freed\001 4 1 0 50 -1 0 12 0.0000 4 195 4065 4950 -900 Time Sequence diagram of packet receive in Pluto\001 4 0 0 50 -1 0 12 0.0000 4 195 1965 4500 -540 select() indicates fd read\001