make dist
[moonshot-ui.git] / src / moonshot-webp-parser.c
1 /* moonshot-webp-parser.c generated by valac 0.10.4, the Vala compiler
2  * generated from moonshot-webp-parser.vala, do not modify */
3
4
5 #include <glib.h>
6 #include <glib-object.h>
7 #include <stdlib.h>
8 #include <string.h>
9 #include <glib/gstdio.h>
10 #include <libmoonshot.h>
11 #include <stdio.h>
12
13
14 #define WEB_PROVISIONING_TYPE_PARSER (web_provisioning_parser_get_type ())
15 #define WEB_PROVISIONING_PARSER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), WEB_PROVISIONING_TYPE_PARSER, WebProvisioningParser))
16 #define WEB_PROVISIONING_PARSER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), WEB_PROVISIONING_TYPE_PARSER, WebProvisioningParserClass))
17 #define WEB_PROVISIONING_IS_PARSER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), WEB_PROVISIONING_TYPE_PARSER))
18 #define WEB_PROVISIONING_IS_PARSER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), WEB_PROVISIONING_TYPE_PARSER))
19 #define WEB_PROVISIONING_PARSER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), WEB_PROVISIONING_TYPE_PARSER, WebProvisioningParserClass))
20
21 typedef struct _WebProvisioningParser WebProvisioningParser;
22 typedef struct _WebProvisioningParserClass WebProvisioningParserClass;
23
24 #define TYPE_ID_CARD (id_card_get_type ())
25 #define ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD, IdCard))
26 #define ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD, IdCardClass))
27 #define IS_ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD))
28 #define IS_ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD))
29 #define ID_CARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD, IdCardClass))
30
31 typedef struct _IdCard IdCard;
32 typedef struct _IdCardClass IdCardClass;
33
34 #define TYPE_RULE (rule_get_type ())
35 typedef struct _Rule Rule;
36 #define _g_free0(var) (var = (g_free (var), NULL))
37
38 #define TYPE_TRUST_ANCHOR (trust_anchor_get_type ())
39 #define TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TRUST_ANCHOR, TrustAnchor))
40 #define TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TRUST_ANCHOR, TrustAnchorClass))
41 #define IS_TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TRUST_ANCHOR))
42 #define IS_TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TRUST_ANCHOR))
43 #define TRUST_ANCHOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TRUST_ANCHOR, TrustAnchorClass))
44
45 typedef struct _TrustAnchor TrustAnchor;
46 typedef struct _TrustAnchorClass TrustAnchorClass;
47 #define _moonshot_error_free0(var) ((var == NULL) ? NULL : (var = (moonshot_error_free (var), NULL)))
48 #define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
49 #define _web_provisioning_parser_unref0(var) ((var == NULL) ? NULL : (var = (web_provisioning_parser_unref (var), NULL)))
50
51 struct _Rule {
52         char* pattern;
53         char* always_confirm;
54 };
55
56
57 extern IdCard** web_provisioning_cards;
58 extern gint web_provisioning_cards_length1;
59
60 gint web_provisioning_main (char** args, int args_length1);
61 WebProvisioningParser* web_provisioning_parser_new (const char* path);
62 WebProvisioningParser* web_provisioning_parser_construct (GType object_type, const char* path);
63 gpointer web_provisioning_parser_ref (gpointer instance);
64 void web_provisioning_parser_unref (gpointer instance);
65 GParamSpec* web_provisioning_param_spec_parser (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
66 void web_provisioning_value_set_parser (GValue* value, gpointer v_object);
67 void web_provisioning_value_take_parser (GValue* value, gpointer v_object);
68 gpointer web_provisioning_value_get_parser (const GValue* value);
69 GType web_provisioning_parser_get_type (void) G_GNUC_CONST;
70 void web_provisioning_parser_parse (WebProvisioningParser* self);
71 GType id_card_get_type (void) G_GNUC_CONST;
72 GType rule_get_type (void) G_GNUC_CONST;
73 Rule* rule_dup (const Rule* self);
74 void rule_free (Rule* self);
75 void rule_copy (const Rule* self, Rule* dest);
76 void rule_destroy (Rule* self);
77 Rule* id_card_get_rules (IdCard* self, int* result_length1);
78 const char* id_card_get_display_name (IdCard* self);
79 const char* id_card_get_username (IdCard* self);
80 const char* id_card_get_password (IdCard* self);
81 const char* id_card_get_issuer (IdCard* self);
82 char** id_card_get_services (IdCard* self, int* result_length1);
83 GType trust_anchor_get_type (void) G_GNUC_CONST;
84 TrustAnchor* id_card_get_trust_anchor (IdCard* self);
85 const char* trust_anchor_get_ca_cert (TrustAnchor* self);
86 const char* trust_anchor_get_subject (TrustAnchor* self);
87 const char* trust_anchor_get_subject_alt (TrustAnchor* self);
88 const char* trust_anchor_get_server_cert (TrustAnchor* self);
89 static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func);
90 static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func);
91
92
93
94 static gpointer _g_object_ref0 (gpointer self) {
95         return self ? g_object_ref (self) : NULL;
96 }
97
98
99 gint web_provisioning_main (char** args, int args_length1) {
100         gint result = 0;
101         WebProvisioningParser* webp;
102         if (args_length1 < 2) {
103                 g_error ("moonshot-webp-parser.vala:11: Usage %s [-a] WEB_PROVISIONING_FILE", args[0]);
104         }
105         if (!g_file_test (args[1], G_FILE_TEST_EXISTS | G_FILE_TEST_IS_REGULAR)) {
106                 g_error ("moonshot-webp-parser.vala:16: %s does not exist", args[1]);
107         }
108         webp = web_provisioning_parser_new (args[1]);
109         web_provisioning_parser_parse (webp);
110         {
111                 IdCard** card_collection;
112                 int card_collection_length1;
113                 int card_it;
114                 card_collection = web_provisioning_cards;
115                 card_collection_length1 = web_provisioning_cards_length1;
116                 for (card_it = 0; card_it < web_provisioning_cards_length1; card_it = card_it + 1) {
117                         IdCard* card;
118                         card = _g_object_ref0 (card_collection[card_it]);
119                         {
120                                 MoonshotError* _error_;
121                                 gint rules_patterns_length1;
122                                 gint _rules_patterns_size_;
123                                 char** _tmp1_;
124                                 char** _tmp0_ = NULL;
125                                 char** rules_patterns;
126                                 gint rules_always_confirm_length1;
127                                 gint _rules_always_confirm_size_;
128                                 char** _tmp3_;
129                                 char** _tmp2_ = NULL;
130                                 char** rules_always_confirm;
131                                 gint _tmp4_;
132                                 gint _tmp13_;
133                                 MoonshotError* _tmp14_ = NULL;
134                                 MoonshotError* _tmp15_;
135                                 _error_ = NULL;
136                                 rules_patterns = (_tmp1_ = (_tmp0_ = g_new0 (char*, 0 + 1), _tmp0_), rules_patterns_length1 = 0, _rules_patterns_size_ = rules_patterns_length1, _tmp1_);
137                                 rules_always_confirm = (_tmp3_ = (_tmp2_ = g_new0 (char*, 0 + 1), _tmp2_), rules_always_confirm_length1 = 0, _rules_always_confirm_size_ = rules_always_confirm_length1, _tmp3_);
138                                 if (_tmp4_ > 0) {
139                                         gint i;
140                                         gint _tmp5_;
141                                         char** _tmp6_;
142                                         gint _tmp7_;
143                                         char** _tmp8_;
144                                         i = 0;
145                                         rules_patterns = (_tmp6_ = g_new0 (char*, _tmp5_ + 1), rules_patterns = (_vala_array_free (rules_patterns, rules_patterns_length1, (GDestroyNotify) g_free), NULL), rules_patterns_length1 = _tmp5_, _rules_patterns_size_ = rules_patterns_length1, _tmp6_);
146                                         rules_always_confirm = (_tmp8_ = g_new0 (char*, _tmp7_ + 1), rules_always_confirm = (_vala_array_free (rules_always_confirm, rules_always_confirm_length1, (GDestroyNotify) g_free), NULL), rules_always_confirm_length1 = _tmp7_, _rules_always_confirm_size_ = rules_always_confirm_length1, _tmp8_);
147                                         {
148                                                 gint _tmp9_;
149                                                 Rule* r_collection;
150                                                 int r_collection_length1;
151                                                 int r_it;
152                                                 r_collection = id_card_get_rules (card, &_tmp9_);
153                                                 r_collection_length1 = _tmp9_;
154                                                 for (r_it = 0; r_it < _tmp9_; r_it = r_it + 1) {
155                                                         Rule _tmp12_ = {0};
156                                                         Rule r;
157                                                         r = (rule_copy (&r_collection[r_it], &_tmp12_), _tmp12_);
158                                                         {
159                                                                 char* _tmp10_;
160                                                                 char* _tmp11_;
161                                                                 rules_patterns[i] = (_tmp10_ = g_strdup (r.pattern), _g_free0 (rules_patterns[i]), _tmp10_);
162                                                                 rules_always_confirm[i] = (_tmp11_ = g_strdup (r.always_confirm), _g_free0 (rules_always_confirm[i]), _tmp11_);
163                                                                 i++;
164                                                                 rule_destroy (&r);
165                                                         }
166                                                 }
167                                         }
168                                 }
169                                 moonshot_install_id_card (id_card_get_display_name (card), id_card_get_username (card), id_card_get_password (card), id_card_get_issuer (card), rules_patterns, rules_patterns_length1, rules_always_confirm, rules_always_confirm_length1, id_card_get_services (card, &_tmp13_), _tmp13_, trust_anchor_get_ca_cert (id_card_get_trust_anchor (card)), trust_anchor_get_subject (id_card_get_trust_anchor (card)), trust_anchor_get_subject_alt (id_card_get_trust_anchor (card)), trust_anchor_get_server_cert (id_card_get_trust_anchor (card)), &_tmp14_);
170                                 _error_ = (_tmp15_ = _tmp14_, _moonshot_error_free0 (_error_), _tmp15_);
171                                 if (_error_ != NULL) {
172                                         fprintf (stderr, "Error: %s", _error_->message);
173                                         rules_always_confirm = (_vala_array_free (rules_always_confirm, rules_always_confirm_length1, (GDestroyNotify) g_free), NULL);
174                                         rules_patterns = (_vala_array_free (rules_patterns, rules_patterns_length1, (GDestroyNotify) g_free), NULL);
175                                         _moonshot_error_free0 (_error_);
176                                         _g_object_unref0 (card);
177                                         continue;
178                                 }
179                                 rules_always_confirm = (_vala_array_free (rules_always_confirm, rules_always_confirm_length1, (GDestroyNotify) g_free), NULL);
180                                 rules_patterns = (_vala_array_free (rules_patterns, rules_patterns_length1, (GDestroyNotify) g_free), NULL);
181                                 _moonshot_error_free0 (_error_);
182                                 _g_object_unref0 (card);
183                         }
184                 }
185         }
186         result = 0;
187         _web_provisioning_parser_unref0 (webp);
188         return result;
189 }
190
191
192 int main (int argc, char ** argv) {
193         g_type_init ();
194         return web_provisioning_main (argv, argc);
195 }
196
197
198 static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func) {
199         if ((array != NULL) && (destroy_func != NULL)) {
200                 int i;
201                 for (i = 0; i < array_length; i = i + 1) {
202                         if (((gpointer*) array)[i] != NULL) {
203                                 destroy_func (((gpointer*) array)[i]);
204                         }
205                 }
206         }
207 }
208
209
210 static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func) {
211         _vala_array_destroy (array, array_length, destroy_func);
212         g_free (array);
213 }
214
215
216
217