~ubuntu-branches/debian/sid/openchange/sid

« back to all changes in this revision

Viewing changes to pymapi/pymapi.h

  • Committer: Package Import Robot
  • Author(s): Jelmer Vernooij
  • Date: 2012-04-12 20:07:57 UTC
  • mfrom: (11 sid)
  • mto: This revision was merged to the branch mainline in revision 12.
  • Revision ID: package-import@ubuntu.com-20120412200757-k933d9trljmxj1l4
Tags: 1:1.0-4
* openchangeserver: Add dependency on openchangeproxy.
* Rebuild against newer version of Samba 4.
* Use dpkg-buildflags.
* Migrate to Git, update Vcs-Git header.
* Switch to debhelper 9.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*
2
 
   OpenChange MAPI implementation.
3
 
 
4
 
   Copyright (C) Jelmer Vernooij <jelmer@openchange.org> 2008.
5
 
 
6
 
   This program is free software; you can redistribute it and/or modify
7
 
   it under the terms of the GNU General Public License as published by
8
 
   the Free Software Foundation; either version 3 of the License, or
9
 
   (at your option) any later version.
10
 
   
11
 
   This program is distributed in the hope that it will be useful,
12
 
   but WITHOUT ANY WARRANTY; without even the implied warranty of
13
 
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
 
   GNU General Public License for more details.
15
 
   
16
 
   You should have received a copy of the GNU General Public License
17
 
   along with this program.  If not, see <http://www.gnu.org/licenses/>.
18
 
 */
19
 
 
20
 
#ifndef _PYMAPI_H_
21
 
#define _PYMAPI_H_
22
 
 
23
 
#include "libmapi/libmapi.h"
24
 
#include <Python.h>
25
 
 
26
 
/* mapi.Session */
27
 
PyAPI_DATA(PyTypeObject) PyMapiSessionType;
28
 
PyObject *PyMapiSession_FromMapiSession(struct mapi_session *session);
29
 
 
30
 
/* mapi.Object */
31
 
typedef struct {
32
 
        PyObject_HEAD   
33
 
        mapi_object_t *object;
34
 
} PyMapiObjectObject;
35
 
 
36
 
PyAPI_DATA(PyTypeObject) PyMapiObjectType;
37
 
mapi_object_t *PyMapiObject_GetMapiObject(PyObject *);
38
 
#define PyMapiObject_Check(op) PyObject_TypeCheck(op, &PyMapiObjectType)
39
 
 
40
 
/* mapi.MessageStore */
41
 
PyAPI_DATA(PyTypeObject) PyMapiMsgStoreType;
42
 
 
43
 
/* Set a MAPISTATUS error as a Python exception */
44
 
#define PyErr_FromMAPISTATUS(err) Py_BuildValue("(i,z)", err, NULL)
45
 
#define PyErr_SetMAPISTATUS(err) PyErr_SetObject(PyExc_RuntimeError, PyErr_FromMAPISTATUS(err))
46
 
#define PyErr_MAPISTATUS_IS_ERR_RAISE(err) \
47
 
        if (err != MAPI_E_SUCCESS) { \
48
 
                PyErr_SetMAPISTATUS(err); \
49
 
                return NULL; \
50
 
        }
51
 
 
52
 
#endif