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