1extern int __VERIFIER_nondet_int(void);
2
3
4
5#line 2 "libacc.c"
6struct JoinPoint {
7 void **(*fp)(struct JoinPoint * ) ;
8 void **args ;
9 int argsCount ;
10 char const **argsType ;
11 void *(*arg)(int , struct JoinPoint * ) ;
12 char const *(*argType)(int , struct JoinPoint * ) ;
13 void **retValue ;
14 char const *retType ;
15 char const *funcName ;
16 char const *targetName ;
17 char const *fileName ;
18 char const *kind ;
19 void *excep_return ;
20};
21#line 18 "libacc.c"
22struct __UTAC__CFLOW_FUNC {
23 int (*func)(int , int ) ;
24 int val ;
25 struct __UTAC__CFLOW_FUNC *next ;
26};
27#line 18 "libacc.c"
28struct __UTAC__EXCEPTION {
29 void *jumpbuf ;
30 unsigned long long prtValue ;
31 int pops ;
32 struct __UTAC__CFLOW_FUNC *cflowfuncs ;
33};
34#line 211 "/usr/lib/gcc/x86_64-linux-gnu/4.4.5/include/stddef.h"
35typedef unsigned long size_t;
36#line 76 "libacc.c"
37struct __ACC__ERR {
38 void *v ;
39 struct __ACC__ERR *next ;
40};
41#line 1 "Test.o"
42#pragma merger(0,"Test.i","")
43#line 359 "/usr/include/stdio.h"
44extern int printf(char const * __restrict __format , ...) ;
45#line 688
46extern int puts(char const *__s ) ;
47#line 51 "ClientLib.h"
48void setClientForwardReceiver(int handle , int value ) ;
49#line 55
50void setClientId(int handle , int value ) ;
51#line 8 "featureselect.h"
52int __SELECTED_FEATURE_Base ;
53#line 11 "featureselect.h"
54int __SELECTED_FEATURE_Keys ;
55#line 14 "featureselect.h"
56int __SELECTED_FEATURE_Encrypt ;
57#line 17 "featureselect.h"
58int __SELECTED_FEATURE_AutoResponder ;
59#line 20 "featureselect.h"
60int __SELECTED_FEATURE_AddressBook ;
61#line 23 "featureselect.h"
62int __SELECTED_FEATURE_Sign ;
63#line 26 "featureselect.h"
64int __SELECTED_FEATURE_Forward ;
65#line 29 "featureselect.h"
66int __SELECTED_FEATURE_Verify ;
67#line 32 "featureselect.h"
68int __SELECTED_FEATURE_Decrypt ;
69#line 35 "featureselect.h"
70int __GUIDSL_ROOT_PRODUCTION ;
71#line 37 "featureselect.h"
72int __GUIDSL_NON_TERMINAL_main ;
73#line 43
74void select_features(void) ;
75#line 45
76void select_helpers(void) ;
77#line 47
78int valid_product(void) ;
79#line 17 "Client.h"
80int is_queue_empty(void) ;
81#line 19
82int get_queued_client(void) ;
83#line 21
84int get_queued_email(void) ;
85#line 26
86void outgoing(int client , int msg ) ;
87#line 35
88void sendEmail(int sender , int receiver ) ;
89#line 2 "Test.h"
90int bob ;
91#line 5 "Test.h"
92int rjh ;
93#line 8 "Test.h"
94int chuck ;
95#line 11
96void setup_bob(int bob___0 ) ;
97#line 14
98void setup_rjh(int rjh___0 ) ;
99#line 17
100void setup_chuck(int chuck___0 ) ;
101#line 23
102void bobToRjh(void) ;
103#line 26
104void rjhToBob(void) ;
105#line 29
106void test(void) ;
107#line 32
108void setup(void) ;
109#line 35
110int main(void) ;
111#line 36
112void rjhEnableForwarding(void) ;
113#line 18 "Test.c"
114void setup_bob(int bob___0 )
115{
116
117 {
118 {
119#line 19
120 setClientId(bob___0, bob___0);
121 }
122#line 1304 "Test.c"
123 return;
124}
125}
126#line 26 "Test.c"
127void setup_rjh(int rjh___0 )
128{
129
130 {
131 {
132#line 27
133 setClientId(rjh___0, rjh___0);
134 }
135#line 1324 "Test.c"
136 return;
137}
138}
139#line 33 "Test.c"
140void setup_chuck(int chuck___0 )
141{
142
143 {
144 {
145#line 34
146 setClientId(chuck___0, chuck___0);
147 }
148#line 1344 "Test.c"
149 return;
150}
151}
152#line 44 "Test.c"
153void bobToRjh(void)
154{ int tmp ;
155 int tmp___0 ;
156 int tmp___1 ;
157
158 {
159 {
160#line 46
161 puts("Please enter a subject and a message body.\n");
162#line 47
163 sendEmail(bob, rjh);
164#line 48
165 tmp___1 = is_queue_empty();
166 }
167#line 48
168 if (tmp___1) {
169
170 } else {
171 {
172#line 49
173 tmp = get_queued_email();
174#line 49
175 tmp___0 = get_queued_client();
176#line 49
177 outgoing(tmp___0, tmp);
178 }
179 }
180#line 1371 "Test.c"
181 return;
182}
183}
184#line 56 "Test.c"
185void rjhToBob(void)
186{
187
188 {
189 {
190#line 58
191 puts("Please enter a subject and a message body.\n");
192#line 59
193 sendEmail(rjh, bob);
194 }
195#line 1393 "Test.c"
196 return;
197}
198}
199#line 63 "Test.c"
200#line 70 "Test.c"
201void setup(void)
202{ char const * __restrict __cil_tmp1 ;
203 char const * __restrict __cil_tmp2 ;
204 char const * __restrict __cil_tmp3 ;
205
206 {
207 {
208#line 71
209 bob = 1;
210#line 72
211 setup_bob(bob);
212#line 73
213 __cil_tmp1 = (char const * __restrict )"bob: %d\n";
214#line 73
215 printf(__cil_tmp1, bob);
216#line 75
217 rjh = 2;
218#line 76
219 setup_rjh(rjh);
220#line 77
221 __cil_tmp2 = (char const * __restrict )"rjh: %d\n";
222#line 77
223 printf(__cil_tmp2, rjh);
224#line 79
225 chuck = 3;
226#line 80
227 setup_chuck(chuck);
228#line 81
229 __cil_tmp3 = (char const * __restrict )"chuck: %d\n";
230#line 81
231 printf(__cil_tmp3, chuck);
232 }
233#line 1464 "Test.c"
234 return;
235}
236}
237#line 87 "Test.c"
238int main(void)
239{ int retValue_acc ;
240 int tmp ;
241
242 {
243 {
244#line 88
245 select_helpers();
246#line 89
247 select_features();
248#line 90
249 tmp = valid_product();
250 }
251#line 90
252 if (tmp) {
253 {
254#line 91
255 setup();
256#line 92
257 test();
258 }
259 } else {
260
261 }
262#line 1495 "Test.c"
263 return (retValue_acc);
264}
265}
266#line 100 "Test.c"
267void rjhEnableForwarding(void)
268{
269
270 {
271 {
272#line 101
273 setClientForwardReceiver(rjh, chuck);
274 }
275#line 1519 "Test.c"
276 return;
277}
278}
279#line 1 "wsllib_check.o"
280#pragma merger(0,"wsllib_check.i","")
281#line 3 "wsllib_check.c"
282void __automaton_fail(void)
283{
284
285 {
286 goto ERROR;
287 ERROR: ;
288#line 53 "wsllib_check.c"
289 return;
290}
291}
292#line 1 "scenario.o"
293#pragma merger(0,"scenario.i","")
294#line 1 "scenario.c"
295void test(void)
296{ int op1 ;
297 int op2 ;
298 int op3 ;
299 int op4 ;
300 int op5 ;
301 int op6 ;
302 int op7 ;
303 int op8 ;
304 int op9 ;
305 int op10 ;
306 int op11 ;
307 int splverifierCounter ;
308 int tmp ;
309 int tmp___0 ;
310 int tmp___1 ;
311 int tmp___2 ;
312 int tmp___3 ;
313 int tmp___4 ;
314 int tmp___5 ;
315 int tmp___6 ;
316 int tmp___7 ;
317 int tmp___8 ;
318 int tmp___9 ;
319
320 {
321#line 2
322 op1 = 0;
323#line 3
324 op2 = 0;
325#line 4
326 op3 = 0;
327#line 5
328 op4 = 0;
329#line 6
330 op5 = 0;
331#line 7
332 op6 = 0;
333#line 8
334 op7 = 0;
335#line 9
336 op8 = 0;
337#line 10
338 op9 = 0;
339#line 11
340 op10 = 0;
341#line 12
342 op11 = 0;
343#line 13
344 splverifierCounter = 0;
345 {
346#line 14
347 while (1) {
348 while_0_continue: ;
349#line 14
350 if (splverifierCounter < 4) {
351
352 } else {
353 goto while_0_break;
354 }
355#line 15
356 splverifierCounter = splverifierCounter + 1;
357#line 16
358 if (! op1) {
359 {
360#line 16
361 tmp___9 = __VERIFIER_nondet_int();
362 }
363#line 16
364 if (tmp___9) {
365#line 17
366 op1 = 1;
367 } else {
368 goto _L___8;
369 }
370 } else {
371 _L___8:
372#line 18
373 if (! op2) {
374 {
375#line 18
376 tmp___8 = __VERIFIER_nondet_int();
377 }
378#line 18
379 if (tmp___8) {
380#line 20
381 op2 = 1;
382 } else {
383 goto _L___7;
384 }
385 } else {
386 _L___7:
387#line 21
388 if (! op3) {
389 {
390#line 21
391 tmp___7 = __VERIFIER_nondet_int();
392 }
393#line 21
394 if (tmp___7) {
395#line 23
396 op3 = 1;
397 } else {
398 goto _L___6;
399 }
400 } else {
401 _L___6:
402#line 24
403 if (! op4) {
404 {
405#line 24
406 tmp___6 = __VERIFIER_nondet_int();
407 }
408#line 24
409 if (tmp___6) {
410#line 26
411 op4 = 1;
412 } else {
413 goto _L___5;
414 }
415 } else {
416 _L___5:
417#line 27
418 if (! op5) {
419 {
420#line 27
421 tmp___5 = __VERIFIER_nondet_int();
422 }
423#line 27
424 if (tmp___5) {
425#line 29
426 op5 = 1;
427 } else {
428 goto _L___4;
429 }
430 } else {
431 _L___4:
432#line 30
433 if (! op6) {
434 {
435#line 30
436 tmp___4 = __VERIFIER_nondet_int();
437 }
438#line 30
439 if (tmp___4) {
440 {
441#line 32
442 rjhEnableForwarding();
443#line 33
444 op6 = 1;
445 }
446 } else {
447 goto _L___3;
448 }
449 } else {
450 _L___3:
451#line 34
452 if (! op7) {
453 {
454#line 34
455 tmp___3 = __VERIFIER_nondet_int();
456 }
457#line 34
458 if (tmp___3) {
459#line 36
460 op7 = 1;
461 } else {
462 goto _L___2;
463 }
464 } else {
465 _L___2:
466#line 37
467 if (! op8) {
468 {
469#line 37
470 tmp___2 = __VERIFIER_nondet_int();
471 }
472#line 37
473 if (tmp___2) {
474#line 39
475 op8 = 1;
476 } else {
477 goto _L___1;
478 }
479 } else {
480 _L___1:
481#line 40
482 if (! op9) {
483 {
484#line 40
485 tmp___1 = __VERIFIER_nondet_int();
486 }
487#line 40
488 if (tmp___1) {
489#line 42
490 op9 = 1;
491 } else {
492 goto _L___0;
493 }
494 } else {
495 _L___0:
496#line 43
497 if (! op10) {
498 {
499#line 43
500 tmp___0 = __VERIFIER_nondet_int();
501 }
502#line 43
503 if (tmp___0) {
504#line 45
505 op10 = 1;
506 } else {
507 goto _L;
508 }
509 } else {
510 _L:
511#line 46
512 if (! op11) {
513 {
514#line 46
515 tmp = __VERIFIER_nondet_int();
516 }
517#line 46
518 if (tmp) {
519#line 48
520 op11 = 1;
521 } else {
522 goto while_0_break;
523 }
524 } else {
525 goto while_0_break;
526 }
527 }
528 }
529 }
530 }
531 }
532 }
533 }
534 }
535 }
536 }
537 }
538 while_0_break: ;
539 }
540 {
541#line 52
542 bobToRjh();
543 }
544#line 151 "scenario.c"
545 return;
546}
547}
548#line 1 "EmailLib.o"
549#pragma merger(0,"EmailLib.i","")
550#line 4 "EmailLib.h"
551int initEmail(void) ;
552#line 6
553int getEmailId(int handle ) ;
554#line 8
555void setEmailId(int handle , int value ) ;
556#line 10
557int getEmailFrom(int handle ) ;
558#line 12
559void setEmailFrom(int handle , int value ) ;
560#line 14
561int getEmailTo(int handle ) ;
562#line 16
563void setEmailTo(int handle , int value ) ;
564#line 18
565char *getEmailSubject(int handle ) ;
566#line 20
567void setEmailSubject(int handle , char *value ) ;
568#line 22
569char *getEmailBody(int handle ) ;
570#line 24
571void setEmailBody(int handle , char *value ) ;
572#line 26
573int isEncrypted(int handle ) ;
574#line 28
575void setEmailIsEncrypted(int handle , int value ) ;
576#line 30
577int getEmailEncryptionKey(int handle ) ;
578#line 32
579void setEmailEncryptionKey(int handle , int value ) ;
580#line 34
581int isSigned(int handle ) ;
582#line 36
583void setEmailIsSigned(int handle , int value ) ;
584#line 38
585int getEmailSignKey(int handle ) ;
586#line 40
587void setEmailSignKey(int handle , int value ) ;
588#line 42
589int isVerified(int handle ) ;
590#line 44
591void setEmailIsSignatureVerified(int handle , int value ) ;
592#line 5 "EmailLib.c"
593int __ste_Email_counter = 0;
594#line 7 "EmailLib.c"
595int initEmail(void)
596{ int retValue_acc ;
597
598 {
599#line 12 "EmailLib.c"
600 if (__ste_Email_counter < 2) {
601#line 670
602 __ste_Email_counter = __ste_Email_counter + 1;
603#line 670
604 retValue_acc = __ste_Email_counter;
605#line 672
606 return (retValue_acc);
607 } else {
608#line 678 "EmailLib.c"
609 retValue_acc = -1;
610#line 680
611 return (retValue_acc);
612 }
613#line 687 "EmailLib.c"
614 return (retValue_acc);
615}
616}
617#line 15 "EmailLib.c"
618int __ste_email_id0 = 0;
619#line 17 "EmailLib.c"
620int __ste_email_id1 = 0;
621#line 19 "EmailLib.c"
622int getEmailId(int handle )
623{ int retValue_acc ;
624
625 {
626#line 26 "EmailLib.c"
627 if (handle == 1) {
628#line 716
629 retValue_acc = __ste_email_id0;
630#line 718
631 return (retValue_acc);
632 } else {
633#line 720
634 if (handle == 2) {
635#line 725
636 retValue_acc = __ste_email_id1;
637#line 727
638 return (retValue_acc);
639 } else {
640#line 733 "EmailLib.c"
641 retValue_acc = 0;
642#line 735
643 return (retValue_acc);
644 }
645 }
646#line 742 "EmailLib.c"
647 return (retValue_acc);
648}
649}
650#line 29 "EmailLib.c"
651void setEmailId(int handle , int value )
652{
653
654 {
655#line 35
656 if (handle == 1) {
657#line 31
658 __ste_email_id0 = value;
659 } else {
660#line 32
661 if (handle == 2) {
662#line 33
663 __ste_email_id1 = value;
664 } else {
665
666 }
667 }
668#line 773 "EmailLib.c"
669 return;
670}
671}
672#line 37 "EmailLib.c"
673int __ste_email_from0 = 0;
674#line 39 "EmailLib.c"
675int __ste_email_from1 = 0;
676#line 41 "EmailLib.c"
677int getEmailFrom(int handle )
678{ int retValue_acc ;
679
680 {
681#line 48 "EmailLib.c"
682 if (handle == 1) {
683#line 798
684 retValue_acc = __ste_email_from0;
685#line 800
686 return (retValue_acc);
687 } else {
688#line 802
689 if (handle == 2) {
690#line 807
691 retValue_acc = __ste_email_from1;
692#line 809
693 return (retValue_acc);
694 } else {
695#line 815 "EmailLib.c"
696 retValue_acc = 0;
697#line 817
698 return (retValue_acc);
699 }
700 }
701#line 824 "EmailLib.c"
702 return (retValue_acc);
703}
704}
705#line 51 "EmailLib.c"
706void setEmailFrom(int handle , int value )
707{
708
709 {
710#line 57
711 if (handle == 1) {
712#line 53
713 __ste_email_from0 = value;
714 } else {
715#line 54
716 if (handle == 2) {
717#line 55
718 __ste_email_from1 = value;
719 } else {
720
721 }
722 }
723#line 855 "EmailLib.c"
724 return;
725}
726}
727#line 59 "EmailLib.c"
728int __ste_email_to0 = 0;
729#line 61 "EmailLib.c"
730int __ste_email_to1 = 0;
731#line 63 "EmailLib.c"
732int getEmailTo(int handle )
733{ int retValue_acc ;
734
735 {
736#line 70 "EmailLib.c"
737 if (handle == 1) {
738#line 880
739 retValue_acc = __ste_email_to0;
740#line 882
741 return (retValue_acc);
742 } else {
743#line 884
744 if (handle == 2) {
745#line 889
746 retValue_acc = __ste_email_to1;
747#line 891
748 return (retValue_acc);
749 } else {
750#line 897 "EmailLib.c"
751 retValue_acc = 0;
752#line 899
753 return (retValue_acc);
754 }
755 }
756#line 906 "EmailLib.c"
757 return (retValue_acc);
758}
759}
760#line 73 "EmailLib.c"
761void setEmailTo(int handle , int value )
762{
763
764 {
765#line 79
766 if (handle == 1) {
767#line 75
768 __ste_email_to0 = value;
769 } else {
770#line 76
771 if (handle == 2) {
772#line 77
773 __ste_email_to1 = value;
774 } else {
775
776 }
777 }
778#line 937 "EmailLib.c"
779 return;
780}
781}
782#line 81 "EmailLib.c"
783char *__ste_email_subject0 ;
784#line 83 "EmailLib.c"
785char *__ste_email_subject1 ;
786#line 85 "EmailLib.c"
787char *getEmailSubject(int handle )
788{ char *retValue_acc ;
789 void *__cil_tmp3 ;
790
791 {
792#line 92 "EmailLib.c"
793 if (handle == 1) {
794#line 962
795 retValue_acc = __ste_email_subject0;
796#line 964
797 return (retValue_acc);
798 } else {
799#line 966
800 if (handle == 2) {
801#line 971
802 retValue_acc = __ste_email_subject1;
803#line 973
804 return (retValue_acc);
805 } else {
806#line 979 "EmailLib.c"
807 __cil_tmp3 = (void *)0;
808#line 979
809 retValue_acc = (char *)__cil_tmp3;
810#line 981
811 return (retValue_acc);
812 }
813 }
814#line 988 "EmailLib.c"
815 return (retValue_acc);
816}
817}
818#line 95 "EmailLib.c"
819void setEmailSubject(int handle , char *value )
820{
821
822 {
823#line 101
824 if (handle == 1) {
825#line 97
826 __ste_email_subject0 = value;
827 } else {
828#line 98
829 if (handle == 2) {
830#line 99
831 __ste_email_subject1 = value;
832 } else {
833
834 }
835 }
836#line 1019 "EmailLib.c"
837 return;
838}
839}
840#line 103 "EmailLib.c"
841char *__ste_email_body0 = (char *)0;
842#line 105 "EmailLib.c"
843char *__ste_email_body1 = (char *)0;
844#line 107 "EmailLib.c"
845char *getEmailBody(int handle )
846{ char *retValue_acc ;
847 void *__cil_tmp3 ;
848
849 {
850#line 114 "EmailLib.c"
851 if (handle == 1) {
852#line 1044
853 retValue_acc = __ste_email_body0;
854#line 1046
855 return (retValue_acc);
856 } else {
857#line 1048
858 if (handle == 2) {
859#line 1053
860 retValue_acc = __ste_email_body1;
861#line 1055
862 return (retValue_acc);
863 } else {
864#line 1061 "EmailLib.c"
865 __cil_tmp3 = (void *)0;
866#line 1061
867 retValue_acc = (char *)__cil_tmp3;
868#line 1063
869 return (retValue_acc);
870 }
871 }
872#line 1070 "EmailLib.c"
873 return (retValue_acc);
874}
875}
876#line 117 "EmailLib.c"
877void setEmailBody(int handle , char *value )
878{
879
880 {
881#line 123
882 if (handle == 1) {
883#line 119
884 __ste_email_body0 = value;
885 } else {
886#line 120
887 if (handle == 2) {
888#line 121
889 __ste_email_body1 = value;
890 } else {
891
892 }
893 }
894#line 1101 "EmailLib.c"
895 return;
896}
897}
898#line 125 "EmailLib.c"
899int __ste_email_isEncrypted0 = 0;
900#line 127 "EmailLib.c"
901int __ste_email_isEncrypted1 = 0;
902#line 129 "EmailLib.c"
903int isEncrypted(int handle )
904{ int retValue_acc ;
905
906 {
907#line 136 "EmailLib.c"
908 if (handle == 1) {
909#line 1126
910 retValue_acc = __ste_email_isEncrypted0;
911#line 1128
912 return (retValue_acc);
913 } else {
914#line 1130
915 if (handle == 2) {
916#line 1135
917 retValue_acc = __ste_email_isEncrypted1;
918#line 1137
919 return (retValue_acc);
920 } else {
921#line 1143 "EmailLib.c"
922 retValue_acc = 0;
923#line 1145
924 return (retValue_acc);
925 }
926 }
927#line 1152 "EmailLib.c"
928 return (retValue_acc);
929}
930}
931#line 139 "EmailLib.c"
932void setEmailIsEncrypted(int handle , int value )
933{
934
935 {
936#line 145
937 if (handle == 1) {
938#line 141
939 __ste_email_isEncrypted0 = value;
940 } else {
941#line 142
942 if (handle == 2) {
943#line 143
944 __ste_email_isEncrypted1 = value;
945 } else {
946
947 }
948 }
949#line 1183 "EmailLib.c"
950 return;
951}
952}
953#line 147 "EmailLib.c"
954int __ste_email_encryptionKey0 = 0;
955#line 149 "EmailLib.c"
956int __ste_email_encryptionKey1 = 0;
957#line 151 "EmailLib.c"
958int getEmailEncryptionKey(int handle )
959{ int retValue_acc ;
960
961 {
962#line 158 "EmailLib.c"
963 if (handle == 1) {
964#line 1208
965 retValue_acc = __ste_email_encryptionKey0;
966#line 1210
967 return (retValue_acc);
968 } else {
969#line 1212
970 if (handle == 2) {
971#line 1217
972 retValue_acc = __ste_email_encryptionKey1;
973#line 1219
974 return (retValue_acc);
975 } else {
976#line 1225 "EmailLib.c"
977 retValue_acc = 0;
978#line 1227
979 return (retValue_acc);
980 }
981 }
982#line 1234 "EmailLib.c"
983 return (retValue_acc);
984}
985}
986#line 161 "EmailLib.c"
987void setEmailEncryptionKey(int handle , int value )
988{
989
990 {
991#line 167
992 if (handle == 1) {
993#line 163
994 __ste_email_encryptionKey0 = value;
995 } else {
996#line 164
997 if (handle == 2) {
998#line 165
999 __ste_email_encryptionKey1 = value;
1000 } else {
1001
1002 }
1003 }
1004#line 1265 "EmailLib.c"
1005 return;
1006}
1007}
1008#line 169 "EmailLib.c"
1009int __ste_email_isSigned0 = 0;
1010#line 171 "EmailLib.c"
1011int __ste_email_isSigned1 = 0;
1012#line 173 "EmailLib.c"
1013int isSigned(int handle )
1014{ int retValue_acc ;
1015
1016 {
1017#line 180 "EmailLib.c"
1018 if (handle == 1) {
1019#line 1290
1020 retValue_acc = __ste_email_isSigned0;
1021#line 1292
1022 return (retValue_acc);
1023 } else {
1024#line 1294
1025 if (handle == 2) {
1026#line 1299
1027 retValue_acc = __ste_email_isSigned1;
1028#line 1301
1029 return (retValue_acc);
1030 } else {
1031#line 1307 "EmailLib.c"
1032 retValue_acc = 0;
1033#line 1309
1034 return (retValue_acc);
1035 }
1036 }
1037#line 1316 "EmailLib.c"
1038 return (retValue_acc);
1039}
1040}
1041#line 183 "EmailLib.c"
1042void setEmailIsSigned(int handle , int value )
1043{
1044
1045 {
1046#line 189
1047 if (handle == 1) {
1048#line 185
1049 __ste_email_isSigned0 = value;
1050 } else {
1051#line 186
1052 if (handle == 2) {
1053#line 187
1054 __ste_email_isSigned1 = value;
1055 } else {
1056
1057 }
1058 }
1059#line 1347 "EmailLib.c"
1060 return;
1061}
1062}
1063#line 191 "EmailLib.c"
1064int __ste_email_signKey0 = 0;
1065#line 193 "EmailLib.c"
1066int __ste_email_signKey1 = 0;
1067#line 195 "EmailLib.c"
1068int getEmailSignKey(int handle )
1069{ int retValue_acc ;
1070
1071 {
1072#line 202 "EmailLib.c"
1073 if (handle == 1) {
1074#line 1372
1075 retValue_acc = __ste_email_signKey0;
1076#line 1374
1077 return (retValue_acc);
1078 } else {
1079#line 1376
1080 if (handle == 2) {
1081#line 1381
1082 retValue_acc = __ste_email_signKey1;
1083#line 1383
1084 return (retValue_acc);
1085 } else {
1086#line 1389 "EmailLib.c"
1087 retValue_acc = 0;
1088#line 1391
1089 return (retValue_acc);
1090 }
1091 }
1092#line 1398 "EmailLib.c"
1093 return (retValue_acc);
1094}
1095}
1096#line 205 "EmailLib.c"
1097void setEmailSignKey(int handle , int value )
1098{
1099
1100 {
1101#line 211
1102 if (handle == 1) {
1103#line 207
1104 __ste_email_signKey0 = value;
1105 } else {
1106#line 208
1107 if (handle == 2) {
1108#line 209
1109 __ste_email_signKey1 = value;
1110 } else {
1111
1112 }
1113 }
1114#line 1429 "EmailLib.c"
1115 return;
1116}
1117}
1118#line 213 "EmailLib.c"
1119int __ste_email_isSignatureVerified0 ;
1120#line 215 "EmailLib.c"
1121int __ste_email_isSignatureVerified1 ;
1122#line 217 "EmailLib.c"
1123int isVerified(int handle )
1124{ int retValue_acc ;
1125
1126 {
1127#line 224 "EmailLib.c"
1128 if (handle == 1) {
1129#line 1454
1130 retValue_acc = __ste_email_isSignatureVerified0;
1131#line 1456
1132 return (retValue_acc);
1133 } else {
1134#line 1458
1135 if (handle == 2) {
1136#line 1463
1137 retValue_acc = __ste_email_isSignatureVerified1;
1138#line 1465
1139 return (retValue_acc);
1140 } else {
1141#line 1471 "EmailLib.c"
1142 retValue_acc = 0;
1143#line 1473
1144 return (retValue_acc);
1145 }
1146 }
1147#line 1480 "EmailLib.c"
1148 return (retValue_acc);
1149}
1150}
1151#line 227 "EmailLib.c"
1152void setEmailIsSignatureVerified(int handle , int value )
1153{
1154
1155 {
1156#line 233
1157 if (handle == 1) {
1158#line 229
1159 __ste_email_isSignatureVerified0 = value;
1160 } else {
1161#line 230
1162 if (handle == 2) {
1163#line 231
1164 __ste_email_isSignatureVerified1 = value;
1165 } else {
1166
1167 }
1168 }
1169#line 1511 "EmailLib.c"
1170 return;
1171}
1172}
1173#line 1 "libacc.o"
1174#pragma merger(0,"libacc.i","")
1175#line 73 "/usr/include/assert.h"
1176extern __attribute__((__nothrow__, __noreturn__)) void __assert_fail(char const *__assertion ,
1177 char const *__file ,
1178 unsigned int __line ,
1179 char const *__function ) ;
1180#line 471 "/usr/include/stdlib.h"
1181extern __attribute__((__nothrow__)) void *malloc(size_t __size ) __attribute__((__malloc__)) ;
1182#line 488
1183extern __attribute__((__nothrow__)) void free(void *__ptr ) ;
1184#line 32 "libacc.c"
1185void __utac__exception__cf_handler_set(void *exception , int (*cflow_func)(int ,
1186 int ) ,
1187 int val )
1188{ struct __UTAC__EXCEPTION *excep ;
1189 struct __UTAC__CFLOW_FUNC *cf ;
1190 void *tmp ;
1191 unsigned long __cil_tmp7 ;
1192 unsigned long __cil_tmp8 ;
1193 unsigned long __cil_tmp9 ;
1194 unsigned long __cil_tmp10 ;
1195 unsigned long __cil_tmp11 ;
1196 unsigned long __cil_tmp12 ;
1197 unsigned long __cil_tmp13 ;
1198 unsigned long __cil_tmp14 ;
1199 int (**mem_15)(int , int ) ;
1200 int *mem_16 ;
1201 struct __UTAC__CFLOW_FUNC **mem_17 ;
1202 struct __UTAC__CFLOW_FUNC **mem_18 ;
1203 struct __UTAC__CFLOW_FUNC **mem_19 ;
1204
1205 {
1206 {
1207#line 33
1208 excep = (struct __UTAC__EXCEPTION *)exception;
1209#line 34
1210 tmp = malloc(24UL);
1211#line 34
1212 cf = (struct __UTAC__CFLOW_FUNC *)tmp;
1213#line 36
1214 mem_15 = (int (**)(int , int ))cf;
1215#line 36
1216 *mem_15 = cflow_func;
1217#line 37
1218 __cil_tmp7 = (unsigned long )cf;
1219#line 37
1220 __cil_tmp8 = __cil_tmp7 + 8;
1221#line 37
1222 mem_16 = (int *)__cil_tmp8;
1223#line 37
1224 *mem_16 = val;
1225#line 38
1226 __cil_tmp9 = (unsigned long )cf;
1227#line 38
1228 __cil_tmp10 = __cil_tmp9 + 16;
1229#line 38
1230 __cil_tmp11 = (unsigned long )excep;
1231#line 38
1232 __cil_tmp12 = __cil_tmp11 + 24;
1233#line 38
1234 mem_17 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp10;
1235#line 38
1236 mem_18 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp12;
1237#line 38
1238 *mem_17 = *mem_18;
1239#line 39
1240 __cil_tmp13 = (unsigned long )excep;
1241#line 39
1242 __cil_tmp14 = __cil_tmp13 + 24;
1243#line 39
1244 mem_19 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp14;
1245#line 39
1246 *mem_19 = cf;
1247 }
1248#line 654 "libacc.c"
1249 return;
1250}
1251}
1252#line 44 "libacc.c"
1253void __utac__exception__cf_handler_free(void *exception )
1254{ struct __UTAC__EXCEPTION *excep ;
1255 struct __UTAC__CFLOW_FUNC *cf ;
1256 struct __UTAC__CFLOW_FUNC *tmp ;
1257 unsigned long __cil_tmp5 ;
1258 unsigned long __cil_tmp6 ;
1259 struct __UTAC__CFLOW_FUNC *__cil_tmp7 ;
1260 unsigned long __cil_tmp8 ;
1261 unsigned long __cil_tmp9 ;
1262 unsigned long __cil_tmp10 ;
1263 unsigned long __cil_tmp11 ;
1264 void *__cil_tmp12 ;
1265 unsigned long __cil_tmp13 ;
1266 unsigned long __cil_tmp14 ;
1267 struct __UTAC__CFLOW_FUNC **mem_15 ;
1268 struct __UTAC__CFLOW_FUNC **mem_16 ;
1269 struct __UTAC__CFLOW_FUNC **mem_17 ;
1270
1271 {
1272#line 45
1273 excep = (struct __UTAC__EXCEPTION *)exception;
1274#line 46
1275 __cil_tmp5 = (unsigned long )excep;
1276#line 46
1277 __cil_tmp6 = __cil_tmp5 + 24;
1278#line 46
1279 mem_15 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp6;
1280#line 46
1281 cf = *mem_15;
1282 {
1283#line 49
1284 while (1) {
1285 while_1_continue: ;
1286 {
1287#line 49
1288 __cil_tmp7 = (struct __UTAC__CFLOW_FUNC *)0;
1289#line 49
1290 __cil_tmp8 = (unsigned long )__cil_tmp7;
1291#line 49
1292 __cil_tmp9 = (unsigned long )cf;
1293#line 49
1294 if (__cil_tmp9 != __cil_tmp8) {
1295
1296 } else {
1297 goto while_1_break;
1298 }
1299 }
1300 {
1301#line 50
1302 tmp = cf;
1303#line 51
1304 __cil_tmp10 = (unsigned long )cf;
1305#line 51
1306 __cil_tmp11 = __cil_tmp10 + 16;
1307#line 51
1308 mem_16 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp11;
1309#line 51
1310 cf = *mem_16;
1311#line 52
1312 __cil_tmp12 = (void *)tmp;
1313#line 52
1314 free(__cil_tmp12);
1315 }
1316 }
1317 while_1_break: ;
1318 }
1319#line 55
1320 __cil_tmp13 = (unsigned long )excep;
1321#line 55
1322 __cil_tmp14 = __cil_tmp13 + 24;
1323#line 55
1324 mem_17 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp14;
1325#line 55
1326 *mem_17 = (struct __UTAC__CFLOW_FUNC *)0;
1327#line 694 "libacc.c"
1328 return;
1329}
1330}
1331#line 59 "libacc.c"
1332void __utac__exception__cf_handler_reset(void *exception )
1333{ struct __UTAC__EXCEPTION *excep ;
1334 struct __UTAC__CFLOW_FUNC *cf ;
1335 unsigned long __cil_tmp5 ;
1336 unsigned long __cil_tmp6 ;
1337 struct __UTAC__CFLOW_FUNC *__cil_tmp7 ;
1338 unsigned long __cil_tmp8 ;
1339 unsigned long __cil_tmp9 ;
1340 int (*__cil_tmp10)(int , int ) ;
1341 unsigned long __cil_tmp11 ;
1342 unsigned long __cil_tmp12 ;
1343 int __cil_tmp13 ;
1344 unsigned long __cil_tmp14 ;
1345 unsigned long __cil_tmp15 ;
1346 struct __UTAC__CFLOW_FUNC **mem_16 ;
1347 int (**mem_17)(int , int ) ;
1348 int *mem_18 ;
1349 struct __UTAC__CFLOW_FUNC **mem_19 ;
1350
1351 {
1352#line 60
1353 excep = (struct __UTAC__EXCEPTION *)exception;
1354#line 61
1355 __cil_tmp5 = (unsigned long )excep;
1356#line 61
1357 __cil_tmp6 = __cil_tmp5 + 24;
1358#line 61
1359 mem_16 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp6;
1360#line 61
1361 cf = *mem_16;
1362 {
1363#line 64
1364 while (1) {
1365 while_2_continue: ;
1366 {
1367#line 64
1368 __cil_tmp7 = (struct __UTAC__CFLOW_FUNC *)0;
1369#line 64
1370 __cil_tmp8 = (unsigned long )__cil_tmp7;
1371#line 64
1372 __cil_tmp9 = (unsigned long )cf;
1373#line 64
1374 if (__cil_tmp9 != __cil_tmp8) {
1375
1376 } else {
1377 goto while_2_break;
1378 }
1379 }
1380 {
1381#line 65
1382 mem_17 = (int (**)(int , int ))cf;
1383#line 65
1384 __cil_tmp10 = *mem_17;
1385#line 65
1386 __cil_tmp11 = (unsigned long )cf;
1387#line 65
1388 __cil_tmp12 = __cil_tmp11 + 8;
1389#line 65
1390 mem_18 = (int *)__cil_tmp12;
1391#line 65
1392 __cil_tmp13 = *mem_18;
1393#line 65
1394 (*__cil_tmp10)(4, __cil_tmp13);
1395#line 66
1396 __cil_tmp14 = (unsigned long )cf;
1397#line 66
1398 __cil_tmp15 = __cil_tmp14 + 16;
1399#line 66
1400 mem_19 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp15;
1401#line 66
1402 cf = *mem_19;
1403 }
1404 }
1405 while_2_break: ;
1406 }
1407 {
1408#line 69
1409 __utac__exception__cf_handler_free(exception);
1410 }
1411#line 732 "libacc.c"
1412 return;
1413}
1414}
1415#line 80 "libacc.c"
1416void *__utac__error_stack_mgt(void *env , int mode , int count ) ;
1417#line 80 "libacc.c"
1418static struct __ACC__ERR *head = (struct __ACC__ERR *)0;
1419#line 79 "libacc.c"
1420void *__utac__error_stack_mgt(void *env , int mode , int count )
1421{ void *retValue_acc ;
1422 struct __ACC__ERR *new ;
1423 void *tmp ;
1424 struct __ACC__ERR *temp ;
1425 struct __ACC__ERR *next ;
1426 void *excep ;
1427 unsigned long __cil_tmp10 ;
1428 unsigned long __cil_tmp11 ;
1429 unsigned long __cil_tmp12 ;
1430 unsigned long __cil_tmp13 ;
1431 void *__cil_tmp14 ;
1432 unsigned long __cil_tmp15 ;
1433 unsigned long __cil_tmp16 ;
1434 void *__cil_tmp17 ;
1435 void **mem_18 ;
1436 struct __ACC__ERR **mem_19 ;
1437 struct __ACC__ERR **mem_20 ;
1438 void **mem_21 ;
1439 struct __ACC__ERR **mem_22 ;
1440 void **mem_23 ;
1441 void **mem_24 ;
1442
1443 {
1444#line 82 "libacc.c"
1445 if (count == 0) {
1446#line 758 "libacc.c"
1447 return (retValue_acc);
1448 } else {
1449
1450 }
1451#line 86 "libacc.c"
1452 if (mode == 0) {
1453 {
1454#line 87
1455 tmp = malloc(16UL);
1456#line 87
1457 new = (struct __ACC__ERR *)tmp;
1458#line 88
1459 mem_18 = (void **)new;
1460#line 88
1461 *mem_18 = env;
1462#line 89
1463 __cil_tmp10 = (unsigned long )new;
1464#line 89
1465 __cil_tmp11 = __cil_tmp10 + 8;
1466#line 89
1467 mem_19 = (struct __ACC__ERR **)__cil_tmp11;
1468#line 89
1469 *mem_19 = head;
1470#line 90
1471 head = new;
1472#line 776 "libacc.c"
1473 retValue_acc = (void *)new;
1474 }
1475#line 778
1476 return (retValue_acc);
1477 } else {
1478
1479 }
1480#line 94 "libacc.c"
1481 if (mode == 1) {
1482#line 95
1483 temp = head;
1484 {
1485#line 98
1486 while (1) {
1487 while_3_continue: ;
1488#line 98
1489 if (count > 1) {
1490
1491 } else {
1492 goto while_3_break;
1493 }
1494 {
1495#line 99
1496 __cil_tmp12 = (unsigned long )temp;
1497#line 99
1498 __cil_tmp13 = __cil_tmp12 + 8;
1499#line 99
1500 mem_20 = (struct __ACC__ERR **)__cil_tmp13;
1501#line 99
1502 next = *mem_20;
1503#line 100
1504 mem_21 = (void **)temp;
1505#line 100
1506 excep = *mem_21;
1507#line 101
1508 __cil_tmp14 = (void *)temp;
1509#line 101
1510 free(__cil_tmp14);
1511#line 102
1512 __utac__exception__cf_handler_reset(excep);
1513#line 103
1514 temp = next;
1515#line 104
1516 count = count - 1;
1517 }
1518 }
1519 while_3_break: ;
1520 }
1521 {
1522#line 107
1523 __cil_tmp15 = (unsigned long )temp;
1524#line 107
1525 __cil_tmp16 = __cil_tmp15 + 8;
1526#line 107
1527 mem_22 = (struct __ACC__ERR **)__cil_tmp16;
1528#line 107
1529 head = *mem_22;
1530#line 108
1531 mem_23 = (void **)temp;
1532#line 108
1533 excep = *mem_23;
1534#line 109
1535 __cil_tmp17 = (void *)temp;
1536#line 109
1537 free(__cil_tmp17);
1538#line 110
1539 __utac__exception__cf_handler_reset(excep);
1540#line 820 "libacc.c"
1541 retValue_acc = excep;
1542 }
1543#line 822
1544 return (retValue_acc);
1545 } else {
1546
1547 }
1548#line 114
1549 if (mode == 2) {
1550#line 118 "libacc.c"
1551 if (head) {
1552#line 831
1553 mem_24 = (void **)head;
1554#line 831
1555 retValue_acc = *mem_24;
1556#line 833
1557 return (retValue_acc);
1558 } else {
1559#line 837 "libacc.c"
1560 retValue_acc = (void *)0;
1561#line 839
1562 return (retValue_acc);
1563 }
1564 } else {
1565
1566 }
1567#line 846 "libacc.c"
1568 return (retValue_acc);
1569}
1570}
1571#line 122 "libacc.c"
1572void *__utac__get_this_arg(int i , struct JoinPoint *this )
1573{ void *retValue_acc ;
1574 unsigned long __cil_tmp4 ;
1575 unsigned long __cil_tmp5 ;
1576 int __cil_tmp6 ;
1577 int __cil_tmp7 ;
1578 unsigned long __cil_tmp8 ;
1579 unsigned long __cil_tmp9 ;
1580 void **__cil_tmp10 ;
1581 void **__cil_tmp11 ;
1582 int *mem_12 ;
1583 void ***mem_13 ;
1584
1585 {
1586#line 123
1587 if (i > 0) {
1588 {
1589#line 123
1590 __cil_tmp4 = (unsigned long )this;
1591#line 123
1592 __cil_tmp5 = __cil_tmp4 + 16;
1593#line 123
1594 mem_12 = (int *)__cil_tmp5;
1595#line 123
1596 __cil_tmp6 = *mem_12;
1597#line 123
1598 if (i <= __cil_tmp6) {
1599
1600 } else {
1601 {
1602#line 123
1603 __assert_fail("i > 0 && i <= this->argsCount", "libacc.c",
1604 123U, "__utac__get_this_arg");
1605 }
1606 }
1607 }
1608 } else {
1609 {
1610#line 123
1611 __assert_fail("i > 0 && i <= this->argsCount", "libacc.c",
1612 123U, "__utac__get_this_arg");
1613 }
1614 }
1615#line 870 "libacc.c"
1616 __cil_tmp7 = i - 1;
1617#line 870
1618 __cil_tmp8 = (unsigned long )this;
1619#line 870
1620 __cil_tmp9 = __cil_tmp8 + 8;
1621#line 870
1622 mem_13 = (void ***)__cil_tmp9;
1623#line 870
1624 __cil_tmp10 = *mem_13;
1625#line 870
1626 __cil_tmp11 = __cil_tmp10 + __cil_tmp7;
1627#line 870
1628 retValue_acc = *__cil_tmp11;
1629#line 872
1630 return (retValue_acc);
1631#line 879
1632 return (retValue_acc);
1633}
1634}
1635#line 129 "libacc.c"
1636char const *__utac__get_this_argtype(int i , struct JoinPoint *this )
1637{ char const *retValue_acc ;
1638 unsigned long __cil_tmp4 ;
1639 unsigned long __cil_tmp5 ;
1640 int __cil_tmp6 ;
1641 int __cil_tmp7 ;
1642 unsigned long __cil_tmp8 ;
1643 unsigned long __cil_tmp9 ;
1644 char const **__cil_tmp10 ;
1645 char const **__cil_tmp11 ;
1646 int *mem_12 ;
1647 char const ***mem_13 ;
1648
1649 {
1650#line 131
1651 if (i > 0) {
1652 {
1653#line 131
1654 __cil_tmp4 = (unsigned long )this;
1655#line 131
1656 __cil_tmp5 = __cil_tmp4 + 16;
1657#line 131
1658 mem_12 = (int *)__cil_tmp5;
1659#line 131
1660 __cil_tmp6 = *mem_12;
1661#line 131
1662 if (i <= __cil_tmp6) {
1663
1664 } else {
1665 {
1666#line 131
1667 __assert_fail("i > 0 && i <= this->argsCount", "libacc.c",
1668 131U, "__utac__get_this_argtype");
1669 }
1670 }
1671 }
1672 } else {
1673 {
1674#line 131
1675 __assert_fail("i > 0 && i <= this->argsCount", "libacc.c",
1676 131U, "__utac__get_this_argtype");
1677 }
1678 }
1679#line 903 "libacc.c"
1680 __cil_tmp7 = i - 1;
1681#line 903
1682 __cil_tmp8 = (unsigned long )this;
1683#line 903
1684 __cil_tmp9 = __cil_tmp8 + 24;
1685#line 903
1686 mem_13 = (char const ***)__cil_tmp9;
1687#line 903
1688 __cil_tmp10 = *mem_13;
1689#line 903
1690 __cil_tmp11 = __cil_tmp10 + __cil_tmp7;
1691#line 903
1692 retValue_acc = *__cil_tmp11;
1693#line 905
1694 return (retValue_acc);
1695#line 912
1696 return (retValue_acc);
1697}
1698}
1699#line 1 "DecryptForward_spec.o"
1700#pragma merger(0,"DecryptForward_spec.i","")
1701#line 9 "Email.h"
1702int isReadable(int msg ) ;
1703#line 11 "DecryptForward_spec.c"
1704__inline void __utac_acc__DecryptForward_spec__1(int msg )
1705{ int tmp ;
1706
1707 {
1708 {
1709#line 13
1710 puts("before forward\n");
1711#line 14
1712 tmp = isReadable(msg);
1713 }
1714#line 14
1715 if (tmp) {
1716
1717 } else {
1718 {
1719#line 15
1720 __automaton_fail();
1721 }
1722 }
1723#line 15
1724 return;
1725}
1726}
1727#line 1 "ClientLib.o"
1728#pragma merger(0,"ClientLib.i","")
1729#line 4 "ClientLib.h"
1730int initClient(void) ;
1731#line 6
1732char *getClientName(int handle ) ;
1733#line 8
1734void setClientName(int handle , char *value ) ;
1735#line 10
1736int getClientOutbuffer(int handle ) ;
1737#line 12
1738void setClientOutbuffer(int handle , int value ) ;
1739#line 14
1740int getClientAddressBookSize(int handle ) ;
1741#line 16
1742void setClientAddressBookSize(int handle , int value ) ;
1743#line 18
1744int createClientAddressBookEntry(int handle ) ;
1745#line 20
1746int getClientAddressBookAlias(int handle , int index ) ;
1747#line 22
1748void setClientAddressBookAlias(int handle , int index , int value ) ;
1749#line 24
1750int getClientAddressBookAddress(int handle , int index ) ;
1751#line 26
1752void setClientAddressBookAddress(int handle , int index , int value ) ;
1753#line 29
1754int getClientAutoResponse(int handle ) ;
1755#line 31
1756void setClientAutoResponse(int handle , int value ) ;
1757#line 33
1758int getClientPrivateKey(int handle ) ;
1759#line 35
1760void setClientPrivateKey(int handle , int value ) ;
1761#line 37
1762int getClientKeyringSize(int handle ) ;
1763#line 39
1764int createClientKeyringEntry(int handle ) ;
1765#line 41
1766int getClientKeyringUser(int handle , int index ) ;
1767#line 43
1768void setClientKeyringUser(int handle , int index , int value ) ;
1769#line 45
1770int getClientKeyringPublicKey(int handle , int index ) ;
1771#line 47
1772void setClientKeyringPublicKey(int handle , int index , int value ) ;
1773#line 49
1774int getClientForwardReceiver(int handle ) ;
1775#line 53
1776int getClientId(int handle ) ;
1777#line 57
1778int findPublicKey(int handle , int userid ) ;
1779#line 59
1780int findClientAddressBookAlias(int handle , int userid ) ;
1781#line 5 "ClientLib.c"
1782int __ste_Client_counter = 0;
1783#line 7 "ClientLib.c"
1784int initClient(void)
1785{ int retValue_acc ;
1786
1787 {
1788#line 12 "ClientLib.c"
1789 if (__ste_Client_counter < 3) {
1790#line 684
1791 __ste_Client_counter = __ste_Client_counter + 1;
1792#line 684
1793 retValue_acc = __ste_Client_counter;
1794#line 686
1795 return (retValue_acc);
1796 } else {
1797#line 692 "ClientLib.c"
1798 retValue_acc = -1;
1799#line 694
1800 return (retValue_acc);
1801 }
1802#line 701 "ClientLib.c"
1803 return (retValue_acc);
1804}
1805}
1806#line 15 "ClientLib.c"
1807char *__ste_client_name0 = (char *)0;
1808#line 17 "ClientLib.c"
1809char *__ste_client_name1 = (char *)0;
1810#line 19 "ClientLib.c"
1811char *__ste_client_name2 = (char *)0;
1812#line 22 "ClientLib.c"
1813char *getClientName(int handle )
1814{ char *retValue_acc ;
1815 void *__cil_tmp3 ;
1816
1817 {
1818#line 31 "ClientLib.c"
1819 if (handle == 1) {
1820#line 732
1821 retValue_acc = __ste_client_name0;
1822#line 734
1823 return (retValue_acc);
1824 } else {
1825#line 736
1826 if (handle == 2) {
1827#line 741
1828 retValue_acc = __ste_client_name1;
1829#line 743
1830 return (retValue_acc);
1831 } else {
1832#line 745
1833 if (handle == 3) {
1834#line 750
1835 retValue_acc = __ste_client_name2;
1836#line 752
1837 return (retValue_acc);
1838 } else {
1839#line 758 "ClientLib.c"
1840 __cil_tmp3 = (void *)0;
1841#line 758
1842 retValue_acc = (char *)__cil_tmp3;
1843#line 760
1844 return (retValue_acc);
1845 }
1846 }
1847 }
1848#line 767 "ClientLib.c"
1849 return (retValue_acc);
1850}
1851}
1852#line 34 "ClientLib.c"
1853void setClientName(int handle , char *value )
1854{
1855
1856 {
1857#line 42
1858 if (handle == 1) {
1859#line 36
1860 __ste_client_name0 = value;
1861 } else {
1862#line 37
1863 if (handle == 2) {
1864#line 38
1865 __ste_client_name1 = value;
1866 } else {
1867#line 39
1868 if (handle == 3) {
1869#line 40
1870 __ste_client_name2 = value;
1871 } else {
1872
1873 }
1874 }
1875 }
1876#line 802 "ClientLib.c"
1877 return;
1878}
1879}
1880#line 44 "ClientLib.c"
1881int __ste_client_outbuffer0 = 0;
1882#line 46 "ClientLib.c"
1883int __ste_client_outbuffer1 = 0;
1884#line 48 "ClientLib.c"
1885int __ste_client_outbuffer2 = 0;
1886#line 50 "ClientLib.c"
1887int __ste_client_outbuffer3 = 0;
1888#line 53 "ClientLib.c"
1889int getClientOutbuffer(int handle )
1890{ int retValue_acc ;
1891
1892 {
1893#line 62 "ClientLib.c"
1894 if (handle == 1) {
1895#line 831
1896 retValue_acc = __ste_client_outbuffer0;
1897#line 833
1898 return (retValue_acc);
1899 } else {
1900#line 835
1901 if (handle == 2) {
1902#line 840
1903 retValue_acc = __ste_client_outbuffer1;
1904#line 842
1905 return (retValue_acc);
1906 } else {
1907#line 844
1908 if (handle == 3) {
1909#line 849
1910 retValue_acc = __ste_client_outbuffer2;
1911#line 851
1912 return (retValue_acc);
1913 } else {
1914#line 857 "ClientLib.c"
1915 retValue_acc = 0;
1916#line 859
1917 return (retValue_acc);
1918 }
1919 }
1920 }
1921#line 866 "ClientLib.c"
1922 return (retValue_acc);
1923}
1924}
1925#line 65 "ClientLib.c"
1926void setClientOutbuffer(int handle , int value )
1927{
1928
1929 {
1930#line 73
1931 if (handle == 1) {
1932#line 67
1933 __ste_client_outbuffer0 = value;
1934 } else {
1935#line 68
1936 if (handle == 2) {
1937#line 69
1938 __ste_client_outbuffer1 = value;
1939 } else {
1940#line 70
1941 if (handle == 3) {
1942#line 71
1943 __ste_client_outbuffer2 = value;
1944 } else {
1945
1946 }
1947 }
1948 }
1949#line 901 "ClientLib.c"
1950 return;
1951}
1952}
1953#line 77 "ClientLib.c"
1954int __ste_ClientAddressBook_size0 = 0;
1955#line 79 "ClientLib.c"
1956int __ste_ClientAddressBook_size1 = 0;
1957#line 81 "ClientLib.c"
1958int __ste_ClientAddressBook_size2 = 0;
1959#line 84 "ClientLib.c"
1960int getClientAddressBookSize(int handle )
1961{ int retValue_acc ;
1962
1963 {
1964#line 93 "ClientLib.c"
1965 if (handle == 1) {
1966#line 928
1967 retValue_acc = __ste_ClientAddressBook_size0;
1968#line 930
1969 return (retValue_acc);
1970 } else {
1971#line 932
1972 if (handle == 2) {
1973#line 937
1974 retValue_acc = __ste_ClientAddressBook_size1;
1975#line 939
1976 return (retValue_acc);
1977 } else {
1978#line 941
1979 if (handle == 3) {
1980#line 946
1981 retValue_acc = __ste_ClientAddressBook_size2;
1982#line 948
1983 return (retValue_acc);
1984 } else {
1985#line 954 "ClientLib.c"
1986 retValue_acc = 0;
1987#line 956
1988 return (retValue_acc);
1989 }
1990 }
1991 }
1992#line 963 "ClientLib.c"
1993 return (retValue_acc);
1994}
1995}
1996#line 96 "ClientLib.c"
1997void setClientAddressBookSize(int handle , int value )
1998{
1999
2000 {
2001#line 104
2002 if (handle == 1) {
2003#line 98
2004 __ste_ClientAddressBook_size0 = value;
2005 } else {
2006#line 99
2007 if (handle == 2) {
2008#line 100
2009 __ste_ClientAddressBook_size1 = value;
2010 } else {
2011#line 101
2012 if (handle == 3) {
2013#line 102
2014 __ste_ClientAddressBook_size2 = value;
2015 } else {
2016
2017 }
2018 }
2019 }
2020#line 998 "ClientLib.c"
2021 return;
2022}
2023}
2024#line 106 "ClientLib.c"
2025int createClientAddressBookEntry(int handle )
2026{ int retValue_acc ;
2027 int size ;
2028 int tmp ;
2029 int __cil_tmp5 ;
2030
2031 {
2032 {
2033#line 107
2034 tmp = getClientAddressBookSize(handle);
2035#line 107
2036 size = tmp;
2037 }
2038#line 108 "ClientLib.c"
2039 if (size < 3) {
2040 {
2041#line 109 "ClientLib.c"
2042 __cil_tmp5 = size + 1;
2043#line 109
2044 setClientAddressBookSize(handle, __cil_tmp5);
2045#line 1025 "ClientLib.c"
2046 retValue_acc = size + 1;
2047 }
2048#line 1027
2049 return (retValue_acc);
2050 } else {
2051#line 1031 "ClientLib.c"
2052 retValue_acc = -1;
2053#line 1033
2054 return (retValue_acc);
2055 }
2056#line 1040 "ClientLib.c"
2057 return (retValue_acc);
2058}
2059}
2060#line 115 "ClientLib.c"
2061int __ste_Client_AddressBook0_Alias0 = 0;
2062#line 117 "ClientLib.c"
2063int __ste_Client_AddressBook0_Alias1 = 0;
2064#line 119 "ClientLib.c"
2065int __ste_Client_AddressBook0_Alias2 = 0;
2066#line 121 "ClientLib.c"
2067int __ste_Client_AddressBook1_Alias0 = 0;
2068#line 123 "ClientLib.c"
2069int __ste_Client_AddressBook1_Alias1 = 0;
2070#line 125 "ClientLib.c"
2071int __ste_Client_AddressBook1_Alias2 = 0;
2072#line 127 "ClientLib.c"
2073int __ste_Client_AddressBook2_Alias0 = 0;
2074#line 129 "ClientLib.c"
2075int __ste_Client_AddressBook2_Alias1 = 0;
2076#line 131 "ClientLib.c"
2077int __ste_Client_AddressBook2_Alias2 = 0;
2078#line 134 "ClientLib.c"
2079int getClientAddressBookAlias(int handle , int index )
2080{ int retValue_acc ;
2081
2082 {
2083#line 167
2084 if (handle == 1) {
2085#line 144 "ClientLib.c"
2086 if (index == 0) {
2087#line 1086
2088 retValue_acc = __ste_Client_AddressBook0_Alias0;
2089#line 1088
2090 return (retValue_acc);
2091 } else {
2092#line 1090
2093 if (index == 1) {
2094#line 1095
2095 retValue_acc = __ste_Client_AddressBook0_Alias1;
2096#line 1097
2097 return (retValue_acc);
2098 } else {
2099#line 1099
2100 if (index == 2) {
2101#line 1104
2102 retValue_acc = __ste_Client_AddressBook0_Alias2;
2103#line 1106
2104 return (retValue_acc);
2105 } else {
2106#line 1112
2107 retValue_acc = 0;
2108#line 1114
2109 return (retValue_acc);
2110 }
2111 }
2112 }
2113 } else {
2114#line 1116 "ClientLib.c"
2115 if (handle == 2) {
2116#line 154 "ClientLib.c"
2117 if (index == 0) {
2118#line 1124
2119 retValue_acc = __ste_Client_AddressBook1_Alias0;
2120#line 1126
2121 return (retValue_acc);
2122 } else {
2123#line 1128
2124 if (index == 1) {
2125#line 1133
2126 retValue_acc = __ste_Client_AddressBook1_Alias1;
2127#line 1135
2128 return (retValue_acc);
2129 } else {
2130#line 1137
2131 if (index == 2) {
2132#line 1142
2133 retValue_acc = __ste_Client_AddressBook1_Alias2;
2134#line 1144
2135 return (retValue_acc);
2136 } else {
2137#line 1150
2138 retValue_acc = 0;
2139#line 1152
2140 return (retValue_acc);
2141 }
2142 }
2143 }
2144 } else {
2145#line 1154 "ClientLib.c"
2146 if (handle == 3) {
2147#line 164 "ClientLib.c"
2148 if (index == 0) {
2149#line 1162
2150 retValue_acc = __ste_Client_AddressBook2_Alias0;
2151#line 1164
2152 return (retValue_acc);
2153 } else {
2154#line 1166
2155 if (index == 1) {
2156#line 1171
2157 retValue_acc = __ste_Client_AddressBook2_Alias1;
2158#line 1173
2159 return (retValue_acc);
2160 } else {
2161#line 1175
2162 if (index == 2) {
2163#line 1180
2164 retValue_acc = __ste_Client_AddressBook2_Alias2;
2165#line 1182
2166 return (retValue_acc);
2167 } else {
2168#line 1188
2169 retValue_acc = 0;
2170#line 1190
2171 return (retValue_acc);
2172 }
2173 }
2174 }
2175 } else {
2176#line 1196 "ClientLib.c"
2177 retValue_acc = 0;
2178#line 1198
2179 return (retValue_acc);
2180 }
2181 }
2182 }
2183#line 1205 "ClientLib.c"
2184 return (retValue_acc);
2185}
2186}
2187#line 171 "ClientLib.c"
2188int findClientAddressBookAlias(int handle , int userid )
2189{ int retValue_acc ;
2190
2191 {
2192#line 204
2193 if (handle == 1) {
2194#line 181 "ClientLib.c"
2195 if (userid == __ste_Client_AddressBook0_Alias0) {
2196#line 1233
2197 retValue_acc = 0;
2198#line 1235
2199 return (retValue_acc);
2200 } else {
2201#line 1237
2202 if (userid == __ste_Client_AddressBook0_Alias1) {
2203#line 1242
2204 retValue_acc = 1;
2205#line 1244
2206 return (retValue_acc);
2207 } else {
2208#line 1246
2209 if (userid == __ste_Client_AddressBook0_Alias2) {
2210#line 1251
2211 retValue_acc = 2;
2212#line 1253
2213 return (retValue_acc);
2214 } else {
2215#line 1259
2216 retValue_acc = -1;
2217#line 1261
2218 return (retValue_acc);
2219 }
2220 }
2221 }
2222 } else {
2223#line 1263 "ClientLib.c"
2224 if (handle == 2) {
2225#line 191 "ClientLib.c"
2226 if (userid == __ste_Client_AddressBook1_Alias0) {
2227#line 1271
2228 retValue_acc = 0;
2229#line 1273
2230 return (retValue_acc);
2231 } else {
2232#line 1275
2233 if (userid == __ste_Client_AddressBook1_Alias1) {
2234#line 1280
2235 retValue_acc = 1;
2236#line 1282
2237 return (retValue_acc);
2238 } else {
2239#line 1284
2240 if (userid == __ste_Client_AddressBook1_Alias2) {
2241#line 1289
2242 retValue_acc = 2;
2243#line 1291
2244 return (retValue_acc);
2245 } else {
2246#line 1297
2247 retValue_acc = -1;
2248#line 1299
2249 return (retValue_acc);
2250 }
2251 }
2252 }
2253 } else {
2254#line 1301 "ClientLib.c"
2255 if (handle == 3) {
2256#line 201 "ClientLib.c"
2257 if (userid == __ste_Client_AddressBook2_Alias0) {
2258#line 1309
2259 retValue_acc = 0;
2260#line 1311
2261 return (retValue_acc);
2262 } else {
2263#line 1313
2264 if (userid == __ste_Client_AddressBook2_Alias1) {
2265#line 1318
2266 retValue_acc = 1;
2267#line 1320
2268 return (retValue_acc);
2269 } else {
2270#line 1322
2271 if (userid == __ste_Client_AddressBook2_Alias2) {
2272#line 1327
2273 retValue_acc = 2;
2274#line 1329
2275 return (retValue_acc);
2276 } else {
2277#line 1335
2278 retValue_acc = -1;
2279#line 1337
2280 return (retValue_acc);
2281 }
2282 }
2283 }
2284 } else {
2285#line 1343 "ClientLib.c"
2286 retValue_acc = -1;
2287#line 1345
2288 return (retValue_acc);
2289 }
2290 }
2291 }
2292#line 1352 "ClientLib.c"
2293 return (retValue_acc);
2294}
2295}
2296#line 208 "ClientLib.c"
2297void setClientAddressBookAlias(int handle , int index , int value )
2298{
2299
2300 {
2301#line 234
2302 if (handle == 1) {
2303#line 217
2304 if (index == 0) {
2305#line 211
2306 __ste_Client_AddressBook0_Alias0 = value;
2307 } else {
2308#line 212
2309 if (index == 1) {
2310#line 213
2311 __ste_Client_AddressBook0_Alias1 = value;
2312 } else {
2313#line 214
2314 if (index == 2) {
2315#line 215
2316 __ste_Client_AddressBook0_Alias2 = value;
2317 } else {
2318
2319 }
2320 }
2321 }
2322 } else {
2323#line 216
2324 if (handle == 2) {
2325#line 225
2326 if (index == 0) {
2327#line 219
2328 __ste_Client_AddressBook1_Alias0 = value;
2329 } else {
2330#line 220
2331 if (index == 1) {
2332#line 221
2333 __ste_Client_AddressBook1_Alias1 = value;
2334 } else {
2335#line 222
2336 if (index == 2) {
2337#line 223
2338 __ste_Client_AddressBook1_Alias2 = value;
2339 } else {
2340
2341 }
2342 }
2343 }
2344 } else {
2345#line 224
2346 if (handle == 3) {
2347#line 233
2348 if (index == 0) {
2349#line 227
2350 __ste_Client_AddressBook2_Alias0 = value;
2351 } else {
2352#line 228
2353 if (index == 1) {
2354#line 229
2355 __ste_Client_AddressBook2_Alias1 = value;
2356 } else {
2357#line 230
2358 if (index == 2) {
2359#line 231
2360 __ste_Client_AddressBook2_Alias2 = value;
2361 } else {
2362
2363 }
2364 }
2365 }
2366 } else {
2367
2368 }
2369 }
2370 }
2371#line 1420 "ClientLib.c"
2372 return;
2373}
2374}
2375#line 236 "ClientLib.c"
2376int __ste_Client_AddressBook0_Address0 = 0;
2377#line 238 "ClientLib.c"
2378int __ste_Client_AddressBook0_Address1 = 0;
2379#line 240 "ClientLib.c"
2380int __ste_Client_AddressBook0_Address2 = 0;
2381#line 242 "ClientLib.c"
2382int __ste_Client_AddressBook1_Address0 = 0;
2383#line 244 "ClientLib.c"
2384int __ste_Client_AddressBook1_Address1 = 0;
2385#line 246 "ClientLib.c"
2386int __ste_Client_AddressBook1_Address2 = 0;
2387#line 248 "ClientLib.c"
2388int __ste_Client_AddressBook2_Address0 = 0;
2389#line 250 "ClientLib.c"
2390int __ste_Client_AddressBook2_Address1 = 0;
2391#line 252 "ClientLib.c"
2392int __ste_Client_AddressBook2_Address2 = 0;
2393#line 255 "ClientLib.c"
2394int getClientAddressBookAddress(int handle , int index )
2395{ int retValue_acc ;
2396
2397 {
2398#line 288
2399 if (handle == 1) {
2400#line 265 "ClientLib.c"
2401 if (index == 0) {
2402#line 1462
2403 retValue_acc = __ste_Client_AddressBook0_Address0;
2404#line 1464
2405 return (retValue_acc);
2406 } else {
2407#line 1466
2408 if (index == 1) {
2409#line 1471
2410 retValue_acc = __ste_Client_AddressBook0_Address1;
2411#line 1473
2412 return (retValue_acc);
2413 } else {
2414#line 1475
2415 if (index == 2) {
2416#line 1480
2417 retValue_acc = __ste_Client_AddressBook0_Address2;
2418#line 1482
2419 return (retValue_acc);
2420 } else {
2421#line 1488
2422 retValue_acc = 0;
2423#line 1490
2424 return (retValue_acc);
2425 }
2426 }
2427 }
2428 } else {
2429#line 1492 "ClientLib.c"
2430 if (handle == 2) {
2431#line 275 "ClientLib.c"
2432 if (index == 0) {
2433#line 1500
2434 retValue_acc = __ste_Client_AddressBook1_Address0;
2435#line 1502
2436 return (retValue_acc);
2437 } else {
2438#line 1504
2439 if (index == 1) {
2440#line 1509
2441 retValue_acc = __ste_Client_AddressBook1_Address1;
2442#line 1511
2443 return (retValue_acc);
2444 } else {
2445#line 1513
2446 if (index == 2) {
2447#line 1518
2448 retValue_acc = __ste_Client_AddressBook1_Address2;
2449#line 1520
2450 return (retValue_acc);
2451 } else {
2452#line 1526
2453 retValue_acc = 0;
2454#line 1528
2455 return (retValue_acc);
2456 }
2457 }
2458 }
2459 } else {
2460#line 1530 "ClientLib.c"
2461 if (handle == 3) {
2462#line 285 "ClientLib.c"
2463 if (index == 0) {
2464#line 1538
2465 retValue_acc = __ste_Client_AddressBook2_Address0;
2466#line 1540
2467 return (retValue_acc);
2468 } else {
2469#line 1542
2470 if (index == 1) {
2471#line 1547
2472 retValue_acc = __ste_Client_AddressBook2_Address1;
2473#line 1549
2474 return (retValue_acc);
2475 } else {
2476#line 1551
2477 if (index == 2) {
2478#line 1556
2479 retValue_acc = __ste_Client_AddressBook2_Address2;
2480#line 1558
2481 return (retValue_acc);
2482 } else {
2483#line 1564
2484 retValue_acc = 0;
2485#line 1566
2486 return (retValue_acc);
2487 }
2488 }
2489 }
2490 } else {
2491#line 1572 "ClientLib.c"
2492 retValue_acc = 0;
2493#line 1574
2494 return (retValue_acc);
2495 }
2496 }
2497 }
2498#line 1581 "ClientLib.c"
2499 return (retValue_acc);
2500}
2501}
2502#line 291 "ClientLib.c"
2503void setClientAddressBookAddress(int handle , int index , int value )
2504{
2505
2506 {
2507#line 317
2508 if (handle == 1) {
2509#line 300
2510 if (index == 0) {
2511#line 294
2512 __ste_Client_AddressBook0_Address0 = value;
2513 } else {
2514#line 295
2515 if (index == 1) {
2516#line 296
2517 __ste_Client_AddressBook0_Address1 = value;
2518 } else {
2519#line 297
2520 if (index == 2) {
2521#line 298
2522 __ste_Client_AddressBook0_Address2 = value;
2523 } else {
2524
2525 }
2526 }
2527 }
2528 } else {
2529#line 299
2530 if (handle == 2) {
2531#line 308
2532 if (index == 0) {
2533#line 302
2534 __ste_Client_AddressBook1_Address0 = value;
2535 } else {
2536#line 303
2537 if (index == 1) {
2538#line 304
2539 __ste_Client_AddressBook1_Address1 = value;
2540 } else {
2541#line 305
2542 if (index == 2) {
2543#line 306
2544 __ste_Client_AddressBook1_Address2 = value;
2545 } else {
2546
2547 }
2548 }
2549 }
2550 } else {
2551#line 307
2552 if (handle == 3) {
2553#line 316
2554 if (index == 0) {
2555#line 310
2556 __ste_Client_AddressBook2_Address0 = value;
2557 } else {
2558#line 311
2559 if (index == 1) {
2560#line 312
2561 __ste_Client_AddressBook2_Address1 = value;
2562 } else {
2563#line 313
2564 if (index == 2) {
2565#line 314
2566 __ste_Client_AddressBook2_Address2 = value;
2567 } else {
2568
2569 }
2570 }
2571 }
2572 } else {
2573
2574 }
2575 }
2576 }
2577#line 1649 "ClientLib.c"
2578 return;
2579}
2580}
2581#line 319 "ClientLib.c"
2582int __ste_client_autoResponse0 = 0;
2583#line 321 "ClientLib.c"
2584int __ste_client_autoResponse1 = 0;
2585#line 323 "ClientLib.c"
2586int __ste_client_autoResponse2 = 0;
2587#line 326 "ClientLib.c"
2588int getClientAutoResponse(int handle )
2589{ int retValue_acc ;
2590
2591 {
2592#line 335 "ClientLib.c"
2593 if (handle == 1) {
2594#line 1676
2595 retValue_acc = __ste_client_autoResponse0;
2596#line 1678
2597 return (retValue_acc);
2598 } else {
2599#line 1680
2600 if (handle == 2) {
2601#line 1685
2602 retValue_acc = __ste_client_autoResponse1;
2603#line 1687
2604 return (retValue_acc);
2605 } else {
2606#line 1689
2607 if (handle == 3) {
2608#line 1694
2609 retValue_acc = __ste_client_autoResponse2;
2610#line 1696
2611 return (retValue_acc);
2612 } else {
2613#line 1702 "ClientLib.c"
2614 retValue_acc = -1;
2615#line 1704
2616 return (retValue_acc);
2617 }
2618 }
2619 }
2620#line 1711 "ClientLib.c"
2621 return (retValue_acc);
2622}
2623}
2624#line 338 "ClientLib.c"
2625void setClientAutoResponse(int handle , int value )
2626{
2627
2628 {
2629#line 346
2630 if (handle == 1) {
2631#line 340
2632 __ste_client_autoResponse0 = value;
2633 } else {
2634#line 341
2635 if (handle == 2) {
2636#line 342
2637 __ste_client_autoResponse1 = value;
2638 } else {
2639#line 343
2640 if (handle == 3) {
2641#line 344
2642 __ste_client_autoResponse2 = value;
2643 } else {
2644
2645 }
2646 }
2647 }
2648#line 1746 "ClientLib.c"
2649 return;
2650}
2651}
2652#line 348 "ClientLib.c"
2653int __ste_client_privateKey0 = 0;
2654#line 350 "ClientLib.c"
2655int __ste_client_privateKey1 = 0;
2656#line 352 "ClientLib.c"
2657int __ste_client_privateKey2 = 0;
2658#line 355 "ClientLib.c"
2659int getClientPrivateKey(int handle )
2660{ int retValue_acc ;
2661
2662 {
2663#line 364 "ClientLib.c"
2664 if (handle == 1) {
2665#line 1773
2666 retValue_acc = __ste_client_privateKey0;
2667#line 1775
2668 return (retValue_acc);
2669 } else {
2670#line 1777
2671 if (handle == 2) {
2672#line 1782
2673 retValue_acc = __ste_client_privateKey1;
2674#line 1784
2675 return (retValue_acc);
2676 } else {
2677#line 1786
2678 if (handle == 3) {
2679#line 1791
2680 retValue_acc = __ste_client_privateKey2;
2681#line 1793
2682 return (retValue_acc);
2683 } else {
2684#line 1799 "ClientLib.c"
2685 retValue_acc = 0;
2686#line 1801
2687 return (retValue_acc);
2688 }
2689 }
2690 }
2691#line 1808 "ClientLib.c"
2692 return (retValue_acc);
2693}
2694}
2695#line 367 "ClientLib.c"
2696void setClientPrivateKey(int handle , int value )
2697{
2698
2699 {
2700#line 375
2701 if (handle == 1) {
2702#line 369
2703 __ste_client_privateKey0 = value;
2704 } else {
2705#line 370
2706 if (handle == 2) {
2707#line 371
2708 __ste_client_privateKey1 = value;
2709 } else {
2710#line 372
2711 if (handle == 3) {
2712#line 373
2713 __ste_client_privateKey2 = value;
2714 } else {
2715
2716 }
2717 }
2718 }
2719#line 1843 "ClientLib.c"
2720 return;
2721}
2722}
2723#line 377 "ClientLib.c"
2724int __ste_ClientKeyring_size0 = 0;
2725#line 379 "ClientLib.c"
2726int __ste_ClientKeyring_size1 = 0;
2727#line 381 "ClientLib.c"
2728int __ste_ClientKeyring_size2 = 0;
2729#line 384 "ClientLib.c"
2730int getClientKeyringSize(int handle )
2731{ int retValue_acc ;
2732
2733 {
2734#line 393 "ClientLib.c"
2735 if (handle == 1) {
2736#line 1870
2737 retValue_acc = __ste_ClientKeyring_size0;
2738#line 1872
2739 return (retValue_acc);
2740 } else {
2741#line 1874
2742 if (handle == 2) {
2743#line 1879
2744 retValue_acc = __ste_ClientKeyring_size1;
2745#line 1881
2746 return (retValue_acc);
2747 } else {
2748#line 1883
2749 if (handle == 3) {
2750#line 1888
2751 retValue_acc = __ste_ClientKeyring_size2;
2752#line 1890
2753 return (retValue_acc);
2754 } else {
2755#line 1896 "ClientLib.c"
2756 retValue_acc = 0;
2757#line 1898
2758 return (retValue_acc);
2759 }
2760 }
2761 }
2762#line 1905 "ClientLib.c"
2763 return (retValue_acc);
2764}
2765}
2766#line 396 "ClientLib.c"
2767void setClientKeyringSize(int handle , int value )
2768{
2769
2770 {
2771#line 404
2772 if (handle == 1) {
2773#line 398
2774 __ste_ClientKeyring_size0 = value;
2775 } else {
2776#line 399
2777 if (handle == 2) {
2778#line 400
2779 __ste_ClientKeyring_size1 = value;
2780 } else {
2781#line 401
2782 if (handle == 3) {
2783#line 402
2784 __ste_ClientKeyring_size2 = value;
2785 } else {
2786
2787 }
2788 }
2789 }
2790#line 1940 "ClientLib.c"
2791 return;
2792}
2793}
2794#line 406 "ClientLib.c"
2795int createClientKeyringEntry(int handle )
2796{ int retValue_acc ;
2797 int size ;
2798 int tmp ;
2799 int __cil_tmp5 ;
2800
2801 {
2802 {
2803#line 407
2804 tmp = getClientKeyringSize(handle);
2805#line 407
2806 size = tmp;
2807 }
2808#line 408 "ClientLib.c"
2809 if (size < 2) {
2810 {
2811#line 409 "ClientLib.c"
2812 __cil_tmp5 = size + 1;
2813#line 409
2814 setClientKeyringSize(handle, __cil_tmp5);
2815#line 1967 "ClientLib.c"
2816 retValue_acc = size + 1;
2817 }
2818#line 1969
2819 return (retValue_acc);
2820 } else {
2821#line 1973 "ClientLib.c"
2822 retValue_acc = -1;
2823#line 1975
2824 return (retValue_acc);
2825 }
2826#line 1982 "ClientLib.c"
2827 return (retValue_acc);
2828}
2829}
2830#line 414 "ClientLib.c"
2831int __ste_Client_Keyring0_User0 = 0;
2832#line 416 "ClientLib.c"
2833int __ste_Client_Keyring0_User1 = 0;
2834#line 418 "ClientLib.c"
2835int __ste_Client_Keyring0_User2 = 0;
2836#line 420 "ClientLib.c"
2837int __ste_Client_Keyring1_User0 = 0;
2838#line 422 "ClientLib.c"
2839int __ste_Client_Keyring1_User1 = 0;
2840#line 424 "ClientLib.c"
2841int __ste_Client_Keyring1_User2 = 0;
2842#line 426 "ClientLib.c"
2843int __ste_Client_Keyring2_User0 = 0;
2844#line 428 "ClientLib.c"
2845int __ste_Client_Keyring2_User1 = 0;
2846#line 430 "ClientLib.c"
2847int __ste_Client_Keyring2_User2 = 0;
2848#line 433 "ClientLib.c"
2849int getClientKeyringUser(int handle , int index )
2850{ int retValue_acc ;
2851
2852 {
2853#line 466
2854 if (handle == 1) {
2855#line 443 "ClientLib.c"
2856 if (index == 0) {
2857#line 2028
2858 retValue_acc = __ste_Client_Keyring0_User0;
2859#line 2030
2860 return (retValue_acc);
2861 } else {
2862#line 2032
2863 if (index == 1) {
2864#line 2037
2865 retValue_acc = __ste_Client_Keyring0_User1;
2866#line 2039
2867 return (retValue_acc);
2868 } else {
2869#line 2045
2870 retValue_acc = 0;
2871#line 2047
2872 return (retValue_acc);
2873 }
2874 }
2875 } else {
2876#line 2049 "ClientLib.c"
2877 if (handle == 2) {
2878#line 453 "ClientLib.c"
2879 if (index == 0) {
2880#line 2057
2881 retValue_acc = __ste_Client_Keyring1_User0;
2882#line 2059
2883 return (retValue_acc);
2884 } else {
2885#line 2061
2886 if (index == 1) {
2887#line 2066
2888 retValue_acc = __ste_Client_Keyring1_User1;
2889#line 2068
2890 return (retValue_acc);
2891 } else {
2892#line 2074
2893 retValue_acc = 0;
2894#line 2076
2895 return (retValue_acc);
2896 }
2897 }
2898 } else {
2899#line 2078 "ClientLib.c"
2900 if (handle == 3) {
2901#line 463 "ClientLib.c"
2902 if (index == 0) {
2903#line 2086
2904 retValue_acc = __ste_Client_Keyring2_User0;
2905#line 2088
2906 return (retValue_acc);
2907 } else {
2908#line 2090
2909 if (index == 1) {
2910#line 2095
2911 retValue_acc = __ste_Client_Keyring2_User1;
2912#line 2097
2913 return (retValue_acc);
2914 } else {
2915#line 2103
2916 retValue_acc = 0;
2917#line 2105
2918 return (retValue_acc);
2919 }
2920 }
2921 } else {
2922#line 2111 "ClientLib.c"
2923 retValue_acc = 0;
2924#line 2113
2925 return (retValue_acc);
2926 }
2927 }
2928 }
2929#line 2120 "ClientLib.c"
2930 return (retValue_acc);
2931}
2932}
2933#line 473 "ClientLib.c"
2934void setClientKeyringUser(int handle , int index , int value )
2935{
2936
2937 {
2938#line 499
2939 if (handle == 1) {
2940#line 482
2941 if (index == 0) {
2942#line 476
2943 __ste_Client_Keyring0_User0 = value;
2944 } else {
2945#line 477
2946 if (index == 1) {
2947#line 478
2948 __ste_Client_Keyring0_User1 = value;
2949 } else {
2950
2951 }
2952 }
2953 } else {
2954#line 479
2955 if (handle == 2) {
2956#line 490
2957 if (index == 0) {
2958#line 484
2959 __ste_Client_Keyring1_User0 = value;
2960 } else {
2961#line 485
2962 if (index == 1) {
2963#line 486
2964 __ste_Client_Keyring1_User1 = value;
2965 } else {
2966
2967 }
2968 }
2969 } else {
2970#line 487
2971 if (handle == 3) {
2972#line 498
2973 if (index == 0) {
2974#line 492
2975 __ste_Client_Keyring2_User0 = value;
2976 } else {
2977#line 493
2978 if (index == 1) {
2979#line 494
2980 __ste_Client_Keyring2_User1 = value;
2981 } else {
2982
2983 }
2984 }
2985 } else {
2986
2987 }
2988 }
2989 }
2990#line 2176 "ClientLib.c"
2991 return;
2992}
2993}
2994#line 501 "ClientLib.c"
2995int __ste_Client_Keyring0_PublicKey0 = 0;
2996#line 503 "ClientLib.c"
2997int __ste_Client_Keyring0_PublicKey1 = 0;
2998#line 505 "ClientLib.c"
2999int __ste_Client_Keyring0_PublicKey2 = 0;
3000#line 507 "ClientLib.c"
3001int __ste_Client_Keyring1_PublicKey0 = 0;
3002#line 509 "ClientLib.c"
3003int __ste_Client_Keyring1_PublicKey1 = 0;
3004#line 511 "ClientLib.c"
3005int __ste_Client_Keyring1_PublicKey2 = 0;
3006#line 513 "ClientLib.c"
3007int __ste_Client_Keyring2_PublicKey0 = 0;
3008#line 515 "ClientLib.c"
3009int __ste_Client_Keyring2_PublicKey1 = 0;
3010#line 517 "ClientLib.c"
3011int __ste_Client_Keyring2_PublicKey2 = 0;
3012#line 520 "ClientLib.c"
3013int getClientKeyringPublicKey(int handle , int index )
3014{ int retValue_acc ;
3015
3016 {
3017#line 553
3018 if (handle == 1) {
3019#line 530 "ClientLib.c"
3020 if (index == 0) {
3021#line 2218
3022 retValue_acc = __ste_Client_Keyring0_PublicKey0;
3023#line 2220
3024 return (retValue_acc);
3025 } else {
3026#line 2222
3027 if (index == 1) {
3028#line 2227
3029 retValue_acc = __ste_Client_Keyring0_PublicKey1;
3030#line 2229
3031 return (retValue_acc);
3032 } else {
3033#line 2235
3034 retValue_acc = 0;
3035#line 2237
3036 return (retValue_acc);
3037 }
3038 }
3039 } else {
3040#line 2239 "ClientLib.c"
3041 if (handle == 2) {
3042#line 540 "ClientLib.c"
3043 if (index == 0) {
3044#line 2247
3045 retValue_acc = __ste_Client_Keyring1_PublicKey0;
3046#line 2249
3047 return (retValue_acc);
3048 } else {
3049#line 2251
3050 if (index == 1) {
3051#line 2256
3052 retValue_acc = __ste_Client_Keyring1_PublicKey1;
3053#line 2258
3054 return (retValue_acc);
3055 } else {
3056#line 2264
3057 retValue_acc = 0;
3058#line 2266
3059 return (retValue_acc);
3060 }
3061 }
3062 } else {
3063#line 2268 "ClientLib.c"
3064 if (handle == 3) {
3065#line 550 "ClientLib.c"
3066 if (index == 0) {
3067#line 2276
3068 retValue_acc = __ste_Client_Keyring2_PublicKey0;
3069#line 2278
3070 return (retValue_acc);
3071 } else {
3072#line 2280
3073 if (index == 1) {
3074#line 2285
3075 retValue_acc = __ste_Client_Keyring2_PublicKey1;
3076#line 2287
3077 return (retValue_acc);
3078 } else {
3079#line 2293
3080 retValue_acc = 0;
3081#line 2295
3082 return (retValue_acc);
3083 }
3084 }
3085 } else {
3086#line 2301 "ClientLib.c"
3087 retValue_acc = 0;
3088#line 2303
3089 return (retValue_acc);
3090 }
3091 }
3092 }
3093#line 2310 "ClientLib.c"
3094 return (retValue_acc);
3095}
3096}
3097#line 557 "ClientLib.c"
3098int findPublicKey(int handle , int userid )
3099{ int retValue_acc ;
3100
3101 {
3102#line 591
3103 if (handle == 1) {
3104#line 568 "ClientLib.c"
3105 if (userid == __ste_Client_Keyring0_User0) {
3106#line 2338
3107 retValue_acc = __ste_Client_Keyring0_PublicKey0;
3108#line 2340
3109 return (retValue_acc);
3110 } else {
3111#line 2342
3112 if (userid == __ste_Client_Keyring0_User1) {
3113#line 2347
3114 retValue_acc = __ste_Client_Keyring0_PublicKey1;
3115#line 2349
3116 return (retValue_acc);
3117 } else {
3118#line 2355
3119 retValue_acc = 0;
3120#line 2357
3121 return (retValue_acc);
3122 }
3123 }
3124 } else {
3125#line 2359 "ClientLib.c"
3126 if (handle == 2) {
3127#line 578 "ClientLib.c"
3128 if (userid == __ste_Client_Keyring1_User0) {
3129#line 2367
3130 retValue_acc = __ste_Client_Keyring1_PublicKey0;
3131#line 2369
3132 return (retValue_acc);
3133 } else {
3134#line 2371
3135 if (userid == __ste_Client_Keyring1_User1) {
3136#line 2376
3137 retValue_acc = __ste_Client_Keyring1_PublicKey1;
3138#line 2378
3139 return (retValue_acc);
3140 } else {
3141#line 2384
3142 retValue_acc = 0;
3143#line 2386
3144 return (retValue_acc);
3145 }
3146 }
3147 } else {
3148#line 2388 "ClientLib.c"
3149 if (handle == 3) {
3150#line 588 "ClientLib.c"
3151 if (userid == __ste_Client_Keyring2_User0) {
3152#line 2396
3153 retValue_acc = __ste_Client_Keyring2_PublicKey0;
3154#line 2398
3155 return (retValue_acc);
3156 } else {
3157#line 2400
3158 if (userid == __ste_Client_Keyring2_User1) {
3159#line 2405
3160 retValue_acc = __ste_Client_Keyring2_PublicKey1;
3161#line 2407
3162 return (retValue_acc);
3163 } else {
3164#line 2413
3165 retValue_acc = 0;
3166#line 2415
3167 return (retValue_acc);
3168 }
3169 }
3170 } else {
3171#line 2421 "ClientLib.c"
3172 retValue_acc = 0;
3173#line 2423
3174 return (retValue_acc);
3175 }
3176 }
3177 }
3178#line 2430 "ClientLib.c"
3179 return (retValue_acc);
3180}
3181}
3182#line 595 "ClientLib.c"
3183void setClientKeyringPublicKey(int handle , int index , int value )
3184{
3185
3186 {
3187#line 621
3188 if (handle == 1) {
3189#line 604
3190 if (index == 0) {
3191#line 598
3192 __ste_Client_Keyring0_PublicKey0 = value;
3193 } else {
3194#line 599
3195 if (index == 1) {
3196#line 600
3197 __ste_Client_Keyring0_PublicKey1 = value;
3198 } else {
3199
3200 }
3201 }
3202 } else {
3203#line 601
3204 if (handle == 2) {
3205#line 612
3206 if (index == 0) {
3207#line 606
3208 __ste_Client_Keyring1_PublicKey0 = value;
3209 } else {
3210#line 607
3211 if (index == 1) {
3212#line 608
3213 __ste_Client_Keyring1_PublicKey1 = value;
3214 } else {
3215
3216 }
3217 }
3218 } else {
3219#line 609
3220 if (handle == 3) {
3221#line 620
3222 if (index == 0) {
3223#line 614
3224 __ste_Client_Keyring2_PublicKey0 = value;
3225 } else {
3226#line 615
3227 if (index == 1) {
3228#line 616
3229 __ste_Client_Keyring2_PublicKey1 = value;
3230 } else {
3231
3232 }
3233 }
3234 } else {
3235
3236 }
3237 }
3238 }
3239#line 2486 "ClientLib.c"
3240 return;
3241}
3242}
3243#line 623 "ClientLib.c"
3244int __ste_client_forwardReceiver0 = 0;
3245#line 625 "ClientLib.c"
3246int __ste_client_forwardReceiver1 = 0;
3247#line 627 "ClientLib.c"
3248int __ste_client_forwardReceiver2 = 0;
3249#line 629 "ClientLib.c"
3250int __ste_client_forwardReceiver3 = 0;
3251#line 631 "ClientLib.c"
3252int getClientForwardReceiver(int handle )
3253{ int retValue_acc ;
3254
3255 {
3256#line 640 "ClientLib.c"
3257 if (handle == 1) {
3258#line 2515
3259 retValue_acc = __ste_client_forwardReceiver0;
3260#line 2517
3261 return (retValue_acc);
3262 } else {
3263#line 2519
3264 if (handle == 2) {
3265#line 2524
3266 retValue_acc = __ste_client_forwardReceiver1;
3267#line 2526
3268 return (retValue_acc);
3269 } else {
3270#line 2528
3271 if (handle == 3) {
3272#line 2533
3273 retValue_acc = __ste_client_forwardReceiver2;
3274#line 2535
3275 return (retValue_acc);
3276 } else {
3277#line 2541 "ClientLib.c"
3278 retValue_acc = 0;
3279#line 2543
3280 return (retValue_acc);
3281 }
3282 }
3283 }
3284#line 2550 "ClientLib.c"
3285 return (retValue_acc);
3286}
3287}
3288#line 643 "ClientLib.c"
3289void setClientForwardReceiver(int handle , int value )
3290{
3291
3292 {
3293#line 651
3294 if (handle == 1) {
3295#line 645
3296 __ste_client_forwardReceiver0 = value;
3297 } else {
3298#line 646
3299 if (handle == 2) {
3300#line 647
3301 __ste_client_forwardReceiver1 = value;
3302 } else {
3303#line 648
3304 if (handle == 3) {
3305#line 649
3306 __ste_client_forwardReceiver2 = value;
3307 } else {
3308
3309 }
3310 }
3311 }
3312#line 2585 "ClientLib.c"
3313 return;
3314}
3315}
3316#line 653 "ClientLib.c"
3317int __ste_client_idCounter0 = 0;
3318#line 655 "ClientLib.c"
3319int __ste_client_idCounter1 = 0;
3320#line 657 "ClientLib.c"
3321int __ste_client_idCounter2 = 0;
3322#line 660 "ClientLib.c"
3323int getClientId(int handle )
3324{ int retValue_acc ;
3325
3326 {
3327#line 669 "ClientLib.c"
3328 if (handle == 1) {
3329#line 2612
3330 retValue_acc = __ste_client_idCounter0;
3331#line 2614
3332 return (retValue_acc);
3333 } else {
3334#line 2616
3335 if (handle == 2) {
3336#line 2621
3337 retValue_acc = __ste_client_idCounter1;
3338#line 2623
3339 return (retValue_acc);
3340 } else {
3341#line 2625
3342 if (handle == 3) {
3343#line 2630
3344 retValue_acc = __ste_client_idCounter2;
3345#line 2632
3346 return (retValue_acc);
3347 } else {
3348#line 2638 "ClientLib.c"
3349 retValue_acc = 0;
3350#line 2640
3351 return (retValue_acc);
3352 }
3353 }
3354 }
3355#line 2647 "ClientLib.c"
3356 return (retValue_acc);
3357}
3358}
3359#line 672 "ClientLib.c"
3360void setClientId(int handle , int value )
3361{
3362
3363 {
3364#line 680
3365 if (handle == 1) {
3366#line 674
3367 __ste_client_idCounter0 = value;
3368 } else {
3369#line 675
3370 if (handle == 2) {
3371#line 676
3372 __ste_client_idCounter1 = value;
3373 } else {
3374#line 677
3375 if (handle == 3) {
3376#line 678
3377 __ste_client_idCounter2 = value;
3378 } else {
3379
3380 }
3381 }
3382 }
3383#line 2682 "ClientLib.c"
3384 return;
3385}
3386}
3387#line 1 "Client.o"
3388#pragma merger(0,"Client.i","")
3389#line 6 "Email.h"
3390void printMail(int msg ) ;
3391#line 12
3392int createEmail(int from , int to ) ;
3393#line 14 "Client.h"
3394void queue(int client , int msg ) ;
3395#line 24
3396void mail(int client , int msg ) ;
3397#line 28
3398void deliver(int client , int msg ) ;
3399#line 30
3400void incoming(int client , int msg ) ;
3401#line 32
3402int createClient(char *name ) ;
3403#line 37
3404void forward(int client , int msg ) ;
3405#line 6 "Client.c"
3406int queue_empty = 1;
3407#line 9 "Client.c"
3408int queued_message ;
3409#line 12 "Client.c"
3410int queued_client ;
3411#line 18 "Client.c"
3412void mail(int client , int msg )
3413{ int tmp ;
3414
3415 {
3416 {
3417#line 19
3418 puts("mail sent");
3419#line 20
3420 tmp = getEmailTo(msg);
3421#line 20
3422 incoming(tmp, msg);
3423 }
3424#line 727 "Client.c"
3425 return;
3426}
3427}
3428#line 27 "Client.c"
3429void outgoing(int client , int msg )
3430{ int tmp ;
3431
3432 {
3433 {
3434#line 28
3435 tmp = getClientId(client);
3436#line 28
3437 setEmailFrom(msg, tmp);
3438#line 29
3439 mail(client, msg);
3440 }
3441#line 749 "Client.c"
3442 return;
3443}
3444}
3445#line 36 "Client.c"
3446void deliver(int client , int msg )
3447{
3448
3449 {
3450 {
3451#line 37
3452 puts("mail delivered\n");
3453 }
3454#line 769 "Client.c"
3455 return;
3456}
3457}
3458#line 44 "Client.c"
3459void incoming__wrappee__Base(int client , int msg )
3460{
3461
3462 {
3463 {
3464#line 45
3465 deliver(client, msg);
3466 }
3467#line 789 "Client.c"
3468 return;
3469}
3470}
3471#line 51 "Client.c"
3472void incoming(int client , int msg )
3473{ int fwreceiver ;
3474 int tmp ;
3475
3476 {
3477 {
3478#line 52
3479 incoming__wrappee__Base(client, msg);
3480#line 53
3481 tmp = getClientForwardReceiver(client);
3482#line 53
3483 fwreceiver = tmp;
3484 }
3485#line 54
3486 if (fwreceiver) {
3487 {
3488#line 56
3489 setEmailTo(msg, fwreceiver);
3490#line 57
3491 forward(client, msg);
3492 }
3493 } else {
3494
3495 }
3496#line 820 "Client.c"
3497 return;
3498}
3499}
3500#line 63 "Client.c"
3501int createClient(char *name )
3502{ int retValue_acc ;
3503 int client ;
3504 int tmp ;
3505
3506 {
3507 {
3508#line 64
3509 tmp = initClient();
3510#line 64
3511 client = tmp;
3512#line 842 "Client.c"
3513 retValue_acc = client;
3514 }
3515#line 844
3516 return (retValue_acc);
3517#line 851
3518 return (retValue_acc);
3519}
3520}
3521#line 71 "Client.c"
3522void sendEmail(int sender , int receiver )
3523{ int email ;
3524 int tmp ;
3525
3526 {
3527 {
3528#line 72
3529 tmp = createEmail(0, receiver);
3530#line 72
3531 email = tmp;
3532#line 73
3533 outgoing(sender, email);
3534 }
3535#line 879 "Client.c"
3536 return;
3537}
3538}
3539#line 81 "Client.c"
3540void queue(int client , int msg )
3541{
3542
3543 {
3544#line 82
3545 queue_empty = 0;
3546#line 83
3547 queued_message = msg;
3548#line 84
3549 queued_client = client;
3550#line 903 "Client.c"
3551 return;
3552}
3553}
3554#line 90 "Client.c"
3555int is_queue_empty(void)
3556{ int retValue_acc ;
3557
3558 {
3559#line 921 "Client.c"
3560 retValue_acc = queue_empty;
3561#line 923
3562 return (retValue_acc);
3563#line 930
3564 return (retValue_acc);
3565}
3566}
3567#line 97 "Client.c"
3568int get_queued_client(void)
3569{ int retValue_acc ;
3570
3571 {
3572#line 952 "Client.c"
3573 retValue_acc = queued_client;
3574#line 954
3575 return (retValue_acc);
3576#line 961
3577 return (retValue_acc);
3578}
3579}
3580#line 104 "Client.c"
3581int get_queued_email(void)
3582{ int retValue_acc ;
3583
3584 {
3585#line 983 "Client.c"
3586 retValue_acc = queued_message;
3587#line 985
3588 return (retValue_acc);
3589#line 992
3590 return (retValue_acc);
3591}
3592}
3593#line 110 "Client.c"
3594void forward(int client , int msg )
3595{ int __utac__ad__arg1 ;
3596
3597 {
3598 {
3599#line 1009 "Client.c"
3600 __utac__ad__arg1 = msg;
3601#line 1010
3602 __utac_acc__DecryptForward_spec__1(__utac__ad__arg1);
3603#line 111 "Client.c"
3604 puts("Forwarding message.\n");
3605#line 112
3606 printMail(msg);
3607#line 113
3608 queue(client, msg);
3609 }
3610#line 1029 "Client.c"
3611 return;
3612}
3613}
3614#line 1 "Util.o"
3615#pragma merger(0,"Util.i","")
3616#line 1 "Util.h"
3617int prompt(char *msg ) ;
3618#line 9 "Util.c"
3619int prompt(char *msg )
3620{ int retValue_acc ;
3621 int retval ;
3622 char const * __restrict __cil_tmp4 ;
3623
3624 {
3625 {
3626#line 10
3627 __cil_tmp4 = (char const * __restrict )"%s\n";
3628#line 10
3629 printf(__cil_tmp4, msg);
3630#line 518 "Util.c"
3631 retValue_acc = retval;
3632 }
3633#line 520
3634 return (retValue_acc);
3635#line 527
3636 return (retValue_acc);
3637}
3638}
3639#line 1 "Email.o"
3640#pragma merger(0,"Email.i","")
3641#line 15 "Email.h"
3642int cloneEmail(int msg ) ;
3643#line 9 "Email.c"
3644void printMail(int msg )
3645{ int tmp ;
3646 int tmp___0 ;
3647 int tmp___1 ;
3648 int tmp___2 ;
3649 char const * __restrict __cil_tmp6 ;
3650 char const * __restrict __cil_tmp7 ;
3651 char const * __restrict __cil_tmp8 ;
3652 char const * __restrict __cil_tmp9 ;
3653
3654 {
3655 {
3656#line 10
3657 tmp = getEmailId(msg);
3658#line 10
3659 __cil_tmp6 = (char const * __restrict )"ID:\n %i\n";
3660#line 10
3661 printf(__cil_tmp6, tmp);
3662#line 11
3663 tmp___0 = getEmailFrom(msg);
3664#line 11
3665 __cil_tmp7 = (char const * __restrict )"FROM:\n %i\n";
3666#line 11
3667 printf(__cil_tmp7, tmp___0);
3668#line 12
3669 tmp___1 = getEmailTo(msg);
3670#line 12
3671 __cil_tmp8 = (char const * __restrict )"TO:\n %i\n";
3672#line 12
3673 printf(__cil_tmp8, tmp___1);
3674#line 13
3675 tmp___2 = isReadable(msg);
3676#line 13
3677 __cil_tmp9 = (char const * __restrict )"IS_READABLE\n %i\n";
3678#line 13
3679 printf(__cil_tmp9, tmp___2);
3680 }
3681#line 601 "Email.c"
3682 return;
3683}
3684}
3685#line 19 "Email.c"
3686int isReadable(int msg )
3687{ int retValue_acc ;
3688
3689 {
3690#line 619 "Email.c"
3691 retValue_acc = 1;
3692#line 621
3693 return (retValue_acc);
3694#line 628
3695 return (retValue_acc);
3696}
3697}
3698#line 24 "Email.c"
3699int cloneEmail(int msg )
3700{ int retValue_acc ;
3701
3702 {
3703#line 650 "Email.c"
3704 retValue_acc = msg;
3705#line 652
3706 return (retValue_acc);
3707#line 659
3708 return (retValue_acc);
3709}
3710}
3711#line 29 "Email.c"
3712int createEmail(int from , int to )
3713{ int retValue_acc ;
3714 int msg ;
3715
3716 {
3717 {
3718#line 30
3719 msg = 1;
3720#line 31
3721 setEmailFrom(msg, from);
3722#line 32
3723 setEmailTo(msg, to);
3724#line 689 "Email.c"
3725 retValue_acc = msg;
3726 }
3727#line 691
3728 return (retValue_acc);
3729#line 698
3730 return (retValue_acc);
3731}
3732}
3733#line 1 "featureselect.o"
3734#pragma merger(0,"featureselect.i","")
3735#line 41 "featureselect.h"
3736int select_one(void) ;
3737#line 8 "featureselect.c"
3738int select_one(void)
3739{ int retValue_acc ;
3740 int choice = __VERIFIER_nondet_int();
3741
3742 {
3743#line 84 "featureselect.c"
3744 retValue_acc = choice;
3745#line 86
3746 return (retValue_acc);
3747#line 93
3748 return (retValue_acc);
3749}
3750}
3751#line 14 "featureselect.c"
3752void select_features(void)
3753{
3754
3755 {
3756#line 115 "featureselect.c"
3757 return;
3758}
3759}
3760#line 20 "featureselect.c"
3761void select_helpers(void)
3762{
3763
3764 {
3765#line 133 "featureselect.c"
3766 return;
3767}
3768}
3769#line 25 "featureselect.c"
3770int valid_product(void)
3771{ int retValue_acc ;
3772
3773 {
3774#line 151 "featureselect.c"
3775 retValue_acc = 1;
3776#line 153
3777 return (retValue_acc);
3778#line 160
3779 return (retValue_acc);
3780}
3781}