author | Nicolas Cornu <nicolas.cornu@ensi-bourges.fr> |
Tue, 01 Jun 2010 11:51:25 +0200 | |
changeset 12 | eb167636e5bc |
child 13 | 4e6245ccd73c |
permissions | -rw-r--r-- |
12
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
1 |
#ifndef __PARSE_H__ |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
2 |
#define __PARSE_H__ 1 |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
3 |
|
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
4 |
#include <glib.h> |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
5 |
#include <loudmouth/loudmouth.h> |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
6 |
|
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
7 |
#include "jingle.h" |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
8 |
|
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
9 |
#define JINGLE_CHECK_ERROR jingle_check_error_quark() |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
10 |
|
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
11 |
|
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
12 |
typedef enum { |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
13 |
JINGLE_CHECK_ERROR_MISSING, // an element or attribute is missing |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
14 |
JINGLE_CHECK_ERROR_BADELEM, // an element is not where it is supposed to be |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
15 |
JINGLE_CHECK_ERROR_BADVALUE // the value of an attribute is incorrect |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
16 |
} JingleCheckError; |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
17 |
|
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
18 |
typedef struct { |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
19 |
JingleAction action; |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
20 |
const gchar* initiator; // optional |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
21 |
const gchar* responder; // optional |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
22 |
const gchar* sid; // required |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
23 |
} JingleData; |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
24 |
|
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
25 |
typedef struct { |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
26 |
const gchar* creator; // required (initiator, responder) |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
27 |
const gchar* disposition; // optional, default=session |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
28 |
const gchar* name; // required |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
29 |
const gchar* senders; // optional (both, initiator, none, responder) |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
30 |
} ContentData; |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
31 |
|
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
32 |
|
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
33 |
int check_jingle(LmMessageNode* node, JingleData *jd, GError **err); |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
34 |
GQuark jingle_check_error_quark(); |
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
35 |
|
eb167636e5bc
Use GError to pass errors, rename parse.c in check.c
Nicolas Cornu <nicolas.cornu@ensi-bourges.fr>
parents:
diff
changeset
|
36 |
#endif |