gloox  0.9.9.12
gloox.h
1 /*
2  Copyright (c) 2005-2008 by Jakob Schroeter <js@camaya.net>
3  This file is part of the gloox library. http://camaya.net/gloox
4 
5  This software is distributed under a license. The full license
6  agreement can be found in the file LICENSE in this distribution.
7  This software may not be copied, modified, sold or distributed
8  other than expressed in the named license agreement.
9 
10  This software is distributed without any warranty.
11 */
12 
329 #ifndef GLOOX_H__
330 #define GLOOX_H__
331 
332 #include "macros.h"
333 
334 #include <string>
335 #include <list>
336 #include <map>
337 
344 namespace gloox
345 {
347  GLOOX_API extern const std::string XMLNS_CLIENT;
348 
350  GLOOX_API extern const std::string XMLNS_COMPONENT_ACCEPT;
351 
353  GLOOX_API extern const std::string XMLNS_COMPONENT_CONNECT;
354 
356  GLOOX_API extern const std::string XMLNS_DISCO_INFO;
357 
359  GLOOX_API extern const std::string XMLNS_DISCO_ITEMS;
360 
362  GLOOX_API extern const std::string XMLNS_ADHOC_COMMANDS;
363 
365  GLOOX_API extern const std::string XMLNS_COMPRESSION;
366 
368  GLOOX_API extern const std::string XMLNS_OFFLINE;
369 
371  GLOOX_API extern const std::string XMLNS_CHAT_STATES;
372 
374  GLOOX_API extern const std::string XMLNS_AMP;
375 
377  GLOOX_API extern const std::string XMLNS_IBB;
378 
380  GLOOX_API extern const std::string XMLNS_FEATURE_NEG;
381 
383  GLOOX_API extern const std::string XMLNS_CHATNEG;
384 
386  GLOOX_API extern const std::string XMLNS_XHTML_IM;
387 
389  GLOOX_API extern const std::string XMLNS_DELAY;
390 
392  GLOOX_API extern const std::string XMLNS_ROSTER;
393 
395  GLOOX_API extern const std::string XMLNS_VERSION;
396 
398  GLOOX_API extern const std::string XMLNS_REGISTER;
399 
401  GLOOX_API extern const std::string XMLNS_PRIVACY;
402 
404  GLOOX_API extern const std::string XMLNS_AUTH;
405 
407  GLOOX_API extern const std::string XMLNS_PRIVATE_XML;
408 
410  GLOOX_API extern const std::string XMLNS_LAST;
411 
413  GLOOX_API extern const std::string XMLNS_SEARCH;
414 
416  GLOOX_API extern const std::string XMLNS_IQ_OOB;
417 
419  GLOOX_API extern const std::string XMLNS_X_DATA;
420 
422  GLOOX_API extern const std::string XMLNS_X_EVENT;
423 
425  GLOOX_API extern const std::string XMLNS_X_OOB;
426 
428  GLOOX_API extern const std::string XMLNS_X_DELAY;
429 
431  GLOOX_API extern const std::string XMLNS_X_GPGSIGNED;
432 
434  GLOOX_API extern const std::string XMLNS_X_GPGENCRYPTED;
435 
437  GLOOX_API extern const std::string XMLNS_VCARD_TEMP;
438 
440  GLOOX_API extern const std::string XMLNS_X_VCARD_UPDATE;
441 
443  GLOOX_API extern const std::string XMLNS_BOOKMARKS;
444 
446  GLOOX_API extern const std::string XMLNS_ANNOTATIONS;
447 
449  GLOOX_API extern const std::string XMLNS_ROSTER_DELIMITER;
450 
452  GLOOX_API extern const std::string XMLNS_XMPP_PING;
453 
455  GLOOX_API extern const std::string XMLNS_SI;
456 
458  GLOOX_API extern const std::string XMLNS_SI_FT;
459 
461  GLOOX_API extern const std::string XMLNS_BYTESTREAMS;
462 
464  GLOOX_API extern const std::string XMLNS_MUC;
465 
467  GLOOX_API extern const std::string XMLNS_MUC_USER;
468 
470  GLOOX_API extern const std::string XMLNS_MUC_ADMIN;
471 
473  GLOOX_API extern const std::string XMLNS_MUC_UNIQUE;
474 
476  GLOOX_API extern const std::string XMLNS_MUC_OWNER;
477 
479  GLOOX_API extern const std::string XMLNS_MUC_ROOMINFO;
480 
482  GLOOX_API extern const std::string XMLNS_MUC_ROOMS;
483 
485  GLOOX_API extern const std::string XMLNS_MUC_REQUEST;
486 
488  GLOOX_API extern const std::string XMLNS_XMPP_STREAM;
489 
491  GLOOX_API extern const std::string XMLNS_XMPP_STANZAS;
492 
494  GLOOX_API extern const std::string XMLNS_STREAM_TLS;
495 
497  GLOOX_API extern const std::string XMLNS_STREAM_SASL;
498 
500  GLOOX_API extern const std::string XMLNS_STREAM_BIND;
501 
503  GLOOX_API extern const std::string XMLNS_STREAM_SESSION;
504 
506  GLOOX_API extern const std::string XMLNS_STREAM_IQAUTH;
507 
509  GLOOX_API extern const std::string XMLNS_STREAM_IQREGISTER;
510 
512  GLOOX_API extern const std::string XMLNS_STREAM_COMPRESS;
513 
515  GLOOX_API extern const std::string XMPP_STREAM_VERSION_MAJOR;
516 
518  GLOOX_API extern const std::string XMPP_STREAM_VERSION_MINOR;
519 
521  GLOOX_API extern const std::string GLOOX_VERSION;
522 
527  {
532  };
533 
539  {
550  };
551 
556  {
588  };
589 
594  {
600  };
601 
606  {
618  // SASLMechanism below must be adjusted accordingly.
619  };
620 
624  // must be adjusted with changes to StreamFeature enum above
626  {
633  SaslMechGssapi = 4096,
634  SaslMechAll = 65535
635  };
636 
641  {
717  };
718 
723  {
729  };
730 
735  {
815  };
816 
821  {
828  };
829 
835  {
909  };
910 
914  enum Presence
915  {
924  };
925 
930  {
931  CertOk = 0,
940  };
941 
945  struct CertInfo
946  {
947  int status;
948  bool chain;
949  std::string issuer;
950  std::string server;
951  int date_from;
953  int date_to;
955  std::string protocol;
956  std::string cipher;
957  std::string mac;
958  std::string compression;
959  };
960 
965  {
997  };
998 
1002  enum LogArea
1003  {
1009  LogAreaClassDns = 0x00020,
1015  LogAreaAllClasses = 0x01FFF,
1018  LogAreaUser = 0x80000,
1019  LogAreaAll = 0xFFFFF
1020  };
1021 
1026  {
1030  };
1031 
1036  {
1044  };
1045 
1050  {
1057  };
1058 
1063  {
1068  };
1069 
1074  {
1080  };
1081 
1086  {
1089  };
1090 
1095  {
1101  };
1102 
1107  {
1112  };
1113 
1118  {
1125  FlagOpen = 64,
1127  FlagPublic = 256,
1129  FlagTemporary = 1024,
1131  FlagUnsecured = 4096,
1133  };
1134 
1139  {
1140  UserSelf = 1,
1146  };
1147 
1151  typedef std::list<std::string> StringList;
1152 
1156  typedef std::map<std::string, std::string> StringMap;
1157 
1158 }
1159 
1160 extern "C"
1161 {
1162  GLOOX_API const char* gloox_version();
1163 }
1164 
1165 #endif // GLOOX_H__