DataMuseum.dk

Presents historical artifacts from the history of:

DKUUG/EUUG Conference tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about DKUUG/EUUG Conference tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download
Index: T m

⟦a2f09b84f⟧ TextFile

    Length: 7961 (0x1f19)
    Types: TextFile
    Names: »mpep.h«

Derivation

└─⟦2d1937cfd⟧ Bits:30007241 EUUGD22: P.P 5.0
    └─⟦e83f91978⟧ »EurOpenD22/isode/osimis-2.0.tar.Z« 
        └─⟦d846658bd⟧ 
            └─⟦this⟧ »osimis/h/mpep.h« 

TextFile

/*
 * Copyright (c) 1988 University College London
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms are permitted
 * provided that the above copyright notice and this paragraph are
 * duplicated in all such forms and that any documentation,
 * advertising materials, and other materials related to such
 * distribution and use acknowledge that the software was developed
 * by the Department of Computer Science, University College London.
 * The name of the University may not be used to
 * endorse or promote products derived from this software without
 * specific prior written permission.
 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
 * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
 */

/* mpep.h - CMIP include file with data structures for pepy */

/*
 * By George Pavlou, April 1990
 */

#include <isode/quipu/name.h>
#include <isode/pepy/UNIV-types.h>
#include "moid.h"

#define M_MAXATTRS	50	/* max number of attrs per managed object */


#define External struct type_UNIV_EXTERNAL
#define NULLEXTERN ((struct type_UNIV_EXTERNAL *) 0)
#define NULLACCESS ((struct type_UNIV_EXTERNAL *) 0)

#define EXTERN_ASN1_TYPE	choice_UNIV_0_single__ASN1__type
#define EXTERN_OCTET_ALIGNED	choice_UNIV_0_octet__aligned
#define EXTERN_ARBITRARY	choice_UNIV_0_arbitrary

External * external_create ();
#define external_free free_UNIV_EXTERNAL


typedef enum
{
    m_noError,
    m_noSuchObjectClass,
    m_noSuchObjectInstance,
    m_accessDenied,
    m_syncNotSupported,
    m_invalidFilter,
    m_noSuchAttribute,
    m_invalidAttributeValue,
    m_getListError,
    m_setListError,
    m_noSuchAction,
    m_processingFailure,
    m_duplicateManagedObjectInstance,
    m_noSuchReferenceObject,
    m_noSuchEventType,
    m_noSuchArgument,
    m_invalidArgumentValue,
    m_invalidScope,
    m_invalidObjectInstance,
    m_missingAttributeValue,
    m_classInstanceConflict,
    m_complexityLimitation,
    m_mistypedOperation,
    m_noSuchInvokeId,
    m_operationCancelled,
    m_invalidOperation,
    m_invalidOperator
} CMISerrors;

#define NULLMERROR m_noError


typedef enum
{
    m_replace,
    m_addValue,
    m_removeValue,
    m_setToDefault
} ModifyOp;


typedef enum
{
    s_bestEffort,
    s_atomic
} CMISsync;

#define NULLSYNC s_bestEffort


typedef struct MIDent		/* Management IDentifier */
{
    int mid_type;
#define MID_GLOBAL	0
#define MID_LOCAL	1

    union {
	OID mid_un_global;	/* an object identifier */
	int mid_un_local;	/* or an integer */
    } mid_un;
#define mid_global	mid_un.mid_un_global
#define mid_local	mid_un.mid_un_local

} MIDent, * MID;

#define NULLMID	((MID) 0)
	

typedef struct MName		/* Management Name */
{
    int mn_type;
#define MN_DN		0
#define MN_NONSPEC	1
#define MN_LOCALDN	2

    union {
	DN     mn_un_dn;	/* a dn/local dn */
	char * mn_un_nonspec;	/* or a non specific name (string) */
    } mn_un;
#define mn_dn		mn_un.mn_un_dn
#define mn_nonspec	mn_un.mn_un_nonspec

} MName, * MN;

#define NULLMN	((MN) 0)


typedef struct CMISparam	/* Management Parameter */
{
    MIDent mp_id;
    PE	   mp_val;
    union {
	CMISerrors mp_un_error;
	ModifyOp   mp_un_modify;
    } mp_un;
#define mp_error	mp_un.mp_un_error
#define mp_modify	mp_un.mp_un_modify

} CMISparam;

#define NULLMPARM	((CMISparam *) 0)


typedef struct
{
    int sc_type;
#define Sc_BaseObject		0
#define Sc_FirstLevel		1
#define Sc_WholeSubtree		2
#define Sc_IndividualLevel	3
#define Sc_BaseToNthLevel	4

    int sc_level;		/* for IndividualLevel or BaseToNthLevel */
} Scope;
#define NULLSCOPE	((Scope *) 0)


typedef struct FilterSubstrings
{
    int fi_sub_type;
#define FI_Substring_Initial	0
#define FI_Substring_Any	1
#define FI_Substring_Final	2

    MIDent fi_sub_attrid;
    char * fi_sub_string;
    struct FilterSubstrings * fi_sub_next;
} FilterSubstrings;


typedef struct FilterItem
{
    int fi_type;    
#define FI_Equality		0
#define FI_Substrings		1
#define FI_GreaterOrEqual	2
#define FI_LessOrEqual		3
#define FI_Present		4
#define FI_SubsetOf		5
#define FI_SupersetOf		6
#define FI_NonNullSetIntersect  7

    union {
	CMISparam	   fi_un_attr;
	FilterSubstrings * fi_un_substrings;
    } fi_un;
#define fi_attr		fi_un.fi_un_attr
#define fi_substrings	fi_un.fi_un_substrings

} FilterItem;

#define NULLFITEM	((FilterItem *) 0)
	

typedef struct CMISfilter
{
    int flt_type;
#define Filter_Item	0
#define Filter_And	1
#define Filter_Or	2
#define Filter_Not	3

    struct CMISfilter * flt_next;
    union {
	struct FilterItem * flt_un_item;	/* an item */
	struct CMISfilter * flt_un_filter;	/* or a ptr to a chain
						   of filters */
    } flt_un;
#define flt_item	flt_un.flt_un_item
#define flt_filter	flt_un.flt_un_filter

} CMISfilter;

#define NULLFILTER	((CMISfilter *) 0)


struct event_rep_arg
{
    MIDent ea_class;
    MName  ea_inst;
    char * ea_time;
    MIDent ea_type;
    PE	   ea_info;
};


struct event_rep_res
{
    MIDent er_class;
    MName  er_inst;
    char * er_time;
    CMISparam er_reply;
};


struct get_arg
{
    MIDent   ga_class;
    MName    ga_inst;
    External * ga_access;
    CMISsync ga_sync;
    Scope    ga_scope;
    CMISfilter * ga_filter;
    int      ga_nattrs;
    MIDent   ga_attrs [M_MAXATTRS];
};


struct get_res
{
    MIDent gr_class;
    MName  gr_inst;
    char * gr_time;
    int    gr_nattrs;
    CMISparam gr_attrs [M_MAXATTRS];
};


struct set_arg
{
    MIDent   sa_class;
    MName    sa_inst;
    External * sa_access;
    CMISsync sa_sync;
    Scope    sa_scope;
    CMISfilter * sa_filter;
    int      sa_nattrs;
    CMISparam sa_attrs [M_MAXATTRS];
};


struct set_res
{
    MIDent sr_class;
    MName  sr_inst;
    char * sr_time;
    int    sr_nattrs;
    CMISparam sr_attrs [M_MAXATTRS];
};


struct action_arg
{
    MIDent   aa_class;
    MName    aa_inst;
    External * aa_access;
    CMISsync aa_sync;
    Scope    aa_scope;
    CMISfilter * aa_filter;
    CMISparam aa_info;
};


struct action_res
{
    MIDent ar_class;
    MName  ar_inst;
    char * ar_time;
    CMISparam ar_reply;
};


struct create_arg
{
    MIDent   ca_class;

    int      ca_instype;
#define CA_OBJECT_INST	0
#define CA_PARENT_INST	1

    MName    ca_inst;
    External * ca_access;
    MName    ca_refinst;
    int      ca_nattrs;
    CMISparam ca_attrs [M_MAXATTRS];
};


struct create_res
{
    MIDent cr_class;
    MName  cr_inst;
    char * cr_time;
    int    cr_nattrs;
    CMISparam cr_attrs [M_MAXATTRS];
};


struct delete_arg
{
    MIDent   da_class;
    MName    da_inst;
    External * da_access;
    CMISsync da_sync;
    Scope    da_scope;
    CMISfilter * da_filter;
};


struct delete_res
{
    MIDent dr_class;
    MName  dr_inst;
    char * dr_time;
};


typedef struct CMISerrparam
{
    MIDent me_class;
    MName  me_inst;
    char * me_time;
    Scope  me_scope;
    CMISfilter * me_filter;
    CMISsync me_sync;
    MIDent me_id;
    PE     me_val;
    union {
	CMISerrors me_un_error;
	ModifyOp   me_un_modify;
    } me_un;
#define me_error	me_un.me_un_error
#define me_modify	me_un.me_un_modify

    int    me_operation;	/* for CMIP use only */
} CMISerrparam;
#define NULLMERRPARM	((CMISerrparam *) 0)


struct linked_reply_arg
{
    int lr_type;
#define LR_UNKNOWN	0
#define LR_GET_RES	1
#define LR_GET_LISTERR	2
#define LR_SET_RES	3
#define LR_SET_LISTERR	4
#define LR_ACTION_RES	5
#define LR_PROC_FAIL	6
#define LR_DELETE_RES	7
#define LR_ACTION_ERR	8
#define LR_DELETE_ERR	9

    union {
	struct get_res	    lr_un_getr;
	struct set_res	    lr_un_setr;
	struct action_res   lr_un_actionr;
	struct delete_res   lr_un_deleter;
	struct CMISerrparam lr_un_error;
    } lr_un;
#define lr_getr		lr_un.lr_un_getr
#define lr_setr		lr_un.lr_un_setr
#define lr_actionr	lr_un.lr_un_actionr
#define lr_deleter	lr_un.lr_un_deleter
#define lr_error	lr_un.lr_un_error
};

#define NOLINKED	0

typedef caddr_t		pepyparm;