00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052
00053
00054
00055
00056
00057
00058
00059
00060
00061
00062
00063
00064
00065
00066
00067
00068
00069
00070
00071
00072
00073
00074
00075
00076
00077
00078
00079
00080
00081
00082
00083
00084
00085
00086
00087
00088
00089
00090
00091
00092
00093
00094
00095
00096
00097 #ifndef _X400_MTAPI_H
00098 #define _X400_MTAPI_H
00099
00100 #include "cdecl.h"
00101 #include "x400_api.h"
00102
00103
00104
00246 X400MT_CDECL const char *X400mtError (int error);
00247
00248 struct X400mtSession;
00249
00260 X400MT_CDECL int X400mtOpen (const char *credentials,
00261 struct X400mtSession **spp);
00262
00263
00264
00273 X400MT_CDECL int X400mtClose (struct X400mtSession *sp);
00274
00288 X400MT_CDECL int X400mtSetIntDefault(struct X400mtSession *sp,
00289 int paramtype,
00290 int value);
00291
00306 X400MT_CDECL int X400mtSetStrDefault(struct X400mtSession *sp,
00307 int paramtype,
00308 const char *value,
00309 size_t length);
00310
00311 struct X400mtMessage;
00312
00326 X400MT_CDECL int X400mtMsgNew (struct X400mtSession *sp,
00327 int type,
00328 struct X400mtMessage **mpp);
00329
00338 X400MT_CDECL int X400mtMsgCountRecip(struct X400mtMessage *mp, int type, int *cp);
00339
00346 X400MT_CDECL int X400mtMsgSend (struct X400mtMessage *mp);
00347
00357 X400MT_CDECL int X400mtMsgDelete (struct X400mtMessage *mp);
00358
00368 X400MT_CDECL int X400mtMsgAddStrParam (struct X400mtMessage *mp,
00369 int paramtype,
00370 const char *value,
00371 size_t length);
00372
00381 X400MT_CDECL int X400mtMsgAddIntParam (struct X400mtMessage *mp,
00382 int paramtype,
00383 int value);
00384
00385
00395 X400MT_CDECL int X400mtMsgAddAttachment (struct X400mtMessage *mp,
00396 int type,
00397 const char *string,
00398 size_t length);
00399
00400
00407 X400MT_CDECL int X400mtMsgAddBodypart (struct X400mtMessage *mp,
00408 struct X400Bodypart *bp);
00409
00413 X400MT_CDECL int X400mtMsgAddMessageBody (struct X400mtMessage *mp,
00414 struct X400Message *mbp);
00415
00429 X400MT_CDECL int X400mtMsgAddMessageBodyWType (struct X400mtMessage *mp,
00430 struct X400Message *mbp,
00431 int type);
00432
00433 struct X400Recipient;
00434
00465 X400MT_CDECL int X400mtRecipNew (struct X400mtMessage *mp,
00466 int type,
00467 struct X400Recipient **rpp);
00468
00469
00479 X400MT_CDECL int X400mtRecipAddStrParam (struct X400Recipient *rp,
00480 int paramtype,
00481 const char *value,
00482 size_t length);
00483
00492 X400MT_CDECL int X400mtRecipAddIntParam (struct X400Recipient *rp,
00493 int paramtype,
00494 int value);
00495
00496
00508 X400MT_CDECL int X400mtWait (struct X400mtSession *sp,
00509 int seconds,
00510 int *count);
00511
00521 X400MT_CDECL int X400mtMsgGet (struct X400mtSession *sp,
00522 struct X400mtMessage **mpp,
00523 int *typep);
00524
00539 X400MT_CDECL int X400mtMsgGetStart (struct X400mtSession *sp,
00540 struct X400mtMessage **mpp,
00541 int *typep);
00542
00566 X400MT_CDECL int X400mtMsgGetFinish (struct X400mtMessage *mp,
00567 int status,
00568 int reason,
00569 int diag,
00570 char *info);
00571
00582 X400MT_CDECL int X400mtMsgGetStrParam (struct X400mtMessage *mp,
00583 int paramtype,
00584 char *buffer,
00585 size_t buflen,
00586 size_t *paramlenp);
00587
00596 X400MT_CDECL int X400mtMsgGetIntParam (struct X400mtMessage *mp,
00597 int paramtype,
00598 int *valp);
00599
00614 X400MT_CDECL int X400mtMsgGetAttachment (struct X400mtMessage *mp,
00615 int number,
00616 int *typep,
00617 char *buffer,
00618 size_t buflen,
00619 size_t *lengthp);
00620
00621
00636 X400MT_CDECL int X400mtMsgGetBodypart (struct X400mtMessage *mp,
00637 int number,
00638 int *typep,
00639 struct X400Bodypart **bpp);
00640
00641
00650 X400MT_CDECL int X400mtMsgGetMessageBody (struct X400mtMessage *mp,
00651 int number,
00652 struct X400Message **mpp);
00653
00665 X400MT_CDECL int X400mtRecipGet (struct X400mtMessage *mp,
00666 int type,
00667 int number,
00668 struct X400Recipient **rpp);
00669
00670
00681 X400MT_CDECL int X400mtRecipGetStrParam (struct X400Recipient *rp,
00682 int paramtype,
00683 char *buffer,
00684 size_t buflen,
00685 size_t *paramlenp);
00686
00695 X400MT_CDECL int X400mtRecipGetIntParam (struct X400Recipient *rp,
00696 int paramtype,
00697 int *valp);
00698
00706 X400MT_CDECL int X400mtDLExpHistGet (struct X400mtMessage *mp,
00707 int entry,
00708 struct X400DLExpHist **hist);
00709
00710
00711 struct X400DLExpHist;
00712
00720 X400MT_CDECL int X400mtDLExpHistNew (
00721 struct X400mtMessage *mp,
00722 struct X400DLExpHist **histp
00723 );
00724
00733 X400MT_CDECL int X400mtTraceInfoGet (
00734 struct X400mtMessage *mp,
00735 int entry,
00736 struct X400TraceInfo **info,
00737 int type
00738 );
00739 struct X400TraceInfo;
00740
00741
00749 X400MT_CDECL int X400mtTraceInfoNew(
00750 struct X400mtMessage *mp,
00751 struct X400TraceInfo **info,
00752 int type
00753 );
00754
00762 X400MT_CDECL int X400mtInternalTraceInfoGet (
00763 struct X400mtMessage *mp,
00764 int entry,
00765 struct X400InternalTraceInfo **info
00766 );
00767 struct X400InternalTraceInfo;
00768
00769
00776 X400MT_CDECL int X400mtInternalTraceInfoNew(
00777 struct X400mtMessage *mp,
00778 struct X400InternalTraceInfo **info
00779 );
00780
00781
00782 struct X400ALI;
00783
00784
00791 X400MT_CDECL int X400mtALINew(
00792 struct X400mtMessage *mp,
00793 struct X400ALI **ali
00794 );
00795
00803 X400MT_CDECL int X400mtALIGet (
00804 struct X400mtMessage *mp,
00805 int entry,
00806 struct X400ALI **ali
00807 );
00808
00809
00810 struct X400PSS;
00811
00812
00820 X400MT_CDECL int X400mtPSSNew(
00821 struct X400mtMessage *mp,
00822 int type,
00823 struct X400PSS **pss
00824 );
00825
00834 X400MT_CDECL int X400mtPSSGet (
00835 struct X400mtMessage *mp,
00836 int type,
00837 int entry,
00838 struct X400PSS **pss
00839 );
00840
00841 struct X400DistField;
00842
00843
00850 X400MT_CDECL int X400mtDistFieldNew(
00851 struct X400mtMessage *mp,
00852 struct X400DistField **distfield
00853 );
00854
00862 X400MT_CDECL int X400mtDistFieldGet (
00863 struct X400mtMessage *mp,
00864 int entry,
00865 struct X400DistField **distfield
00866 );
00867
00868
00869 struct X400OtherRecip;
00870
00871
00878 X400MT_CDECL int X400mtOtherRecipNew(
00879 struct X400mtMessage *mp,
00880 struct X400OtherRecip **otherrecip
00881 );
00882
00890 X400MT_CDECL int X400mtOtherRecipGet (
00891 struct X400mtMessage *mp,
00892 int entry,
00893 struct X400OtherRecip **otherrecip
00894 );
00895
00896
00897
00905 X400MT_CDECL int X400mtRediHistGetEnv(struct X400mtMessage *msg,
00906 int entry,
00907 struct X400RediHist **hist);
00908
00915 X400MT_CDECL int X400mtRediHistNewEnv(
00916 struct X400mtMessage *msg,
00917 struct X400RediHist **hist
00918 );
00919
00920
00927 X400MT_CDECL int X400mtORandDLNew(
00928 struct X400mtMessage *msg,
00929 struct X400ORandDL **or_and_dl
00930 );
00931
00932
00940 X400MT_CDECL int X400mtORandDLGet(struct X400mtMessage *msg,
00941 int entry,
00942 struct X400ORandDL **or_and_dl);
00943
00944 struct X400ORandDL;
00947
00948
00949
00951 #define X400mtOpen(p1, p2) X400mtOpenVer(p1, p2, X400_API_VERSN)
00952
00960 X400MT_CDECL int X400mtOpenVer (const char *credentials,
00961 struct X400mtSession **spp, int version);
00962 #endif