00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00029
00030 #ifndef _SML_ELEMENTS_INTERNALS_H_
00031 #define _SML_ELEMENTS_INTERNALS_H_
00032
00033 #include <libxml/xmlreader.h>
00034
00035 struct SmlAnchor {
00036 char *next;
00037 char *last;
00038 };
00039
00040 struct SmlLocation {
00041 gint refCount;
00042 char *locURI;
00043 char *locName;
00044 };
00045
00046 struct SmlItem {
00047 gint refCount;
00048
00049 SmlLocation *source;
00050 SmlLocation *target;
00051 SmlLocation *sourceParent;
00052 SmlLocation *targetParent;
00053 SmlAnchor *anchor;
00054
00055 xmlBuffer *buffer;
00056
00057 unsigned int size;
00058
00059 char *contenttype;
00060 SmlBool moreData;
00061
00062 SmlBool disabled;
00064 SmlBool raw;
00065 };
00066
00067 struct SmlMapItem {
00068 gint refCount;
00069 SmlLocation *source;
00070 SmlLocation *target;
00071 };
00072
00073 struct SmlHeader {
00074 char *sessionID;
00075 SmlProtocolVersion version;
00076 SmlProtocolType protocol;
00077 SmlLocation *source;
00078 SmlLocation *target;
00079 char *responseURI;
00080 SmlBool noResponse;
00081 unsigned int messageID;
00082 unsigned int maxmsgsize;
00083 unsigned int maxobjsize;
00084 char *emi;
00085 };
00086
00087 struct SmlCred {
00088 SmlFormatType format;
00089 SmlAuthType type;
00090 char *data;
00091 gint refCount;
00092 char *username;
00093 char *password;
00094 };
00095
00096 struct SmlChal {
00097 SmlFormatType format;
00098 SmlAuthType type;
00099 char *nonce_plain;
00100 unsigned int nonce_length;
00101 char *nonce_b64;
00102 gint refCount;
00103 };
00104
00105 void smlLocationSetURI(SmlLocation *loc, const char *uri);
00106
00107 #endif //_SML_ELEMENTS_INTERNALS_H_
00108