Code:
- #include <eim.h>
- #include <stdio.h>
- #include <errno.h>
-
- int main (int argc, char * argv[])
- {
- int rc;
- char eimerr[200];
- EimRC * err;
- EimHandle handle;
- EimIdentifierInfo x;
- EimConnectInfo con;
- char unique[30];
- char rtnstr[20];
- char * message;
- unsigned int sizeOfUnique = 30;
-
-
- memset (eimerr,0x00,200);
- err = (EimRC *)eimerr;
- err->memoryProvidedByCaller = 200;
-
-
- if (0 != (rc = eimCreateHandle(&handle,
- NULL,
- err)))
-
- {
- message = eimErr2String(err);
- sprintf(argv[9], "EIM API Handle Error Message: %s", message);
- free(message);
-
-
- argv[9] [strlen(argv[9])] = ' ';
- return -1;
- }
-
-
- con.type = EIM_SIMPLE;
- con.creds.simpleCreds.protect = EIM_PROTECT_NO;
- con.creds.simpleCreds.bindDn = argv[5];
- con.creds.simpleCreds.bindPw = argv[6];
- con.ssl = NULL;
-
- if (0!= (rc = eimConnect (&handle,
- con,
- err)))
- {
- message = eimErr2String(err);
- sprintf(argv[9], "EIM API Connect Error Message: %s", message);
- free(message);
-
-
- argv[9] [strlen(argv[9])] = ' ';
- return -1;
- }
-
-
- x.idtype = EIM_UNIQUE_NAME;
- x.id.uniqueName = argv[1];
-
- if (0 != (rc = eimRemoveIdentifier (&handle,
- &x,
- err)))
- {
- message = eimErr2String(err);
- sprintf(argv[9], "EIM API Remove Error Message: %s", message);
- free(message);
-
-
-
-
- }
-
- x.idtype = EIM_UNIQUE_NAME;
- x.id.uniqueName = argv[1];
- if (0 != (rc = eimAddIdentifier (&handle, argv[1], EIM_FAIL, &sizeOfUnique,
- unique, argv[2], err)))
-
- {
- message = eimErr2String(err);
- sprintf(argv[9], "EIM API Add ID Error Message: %s", message);
- free(message);
-
-
- argv[9] [strlen(argv[9])] = ' ';
- return -1;
- }
-
- x.idtype = EIM_UNIQUE_NAME;
- x.id.uniqueName = argv[1];
-
- if (0 != (rc = eimAddAssociation (&handle,
- EIM_SOURCE,
- &x,
- argv[7],
- argv[3],
- err)))
- {
- message = eimErr2String(err);
- sprintf(argv[9], "EIM API Source Error Message: %s", message);
- free(message);
-
-
- argv[9] [strlen(argv[9])] = ' ';
- return -1;
- }
-
-
- if (0 != (rc = eimAddAssociation (&handle,
- EIM_TARGET,
- &x,
- argv[8],
- argv[4],
- err)))
- {
- message = eimErr2String(err);
- sprintf(argv[9], "EIM API Target Error Message: %s", message);
- free(message);
-
-
- argv[9] [strlen(argv[9])] = ' ';
- return -1;
- }
-
-
- rc = eimDestroyHandle (&handle, err);
- message = eimErr2String(err);
- sprintf(argv[9], "EIM API Message: %s", message);
- argv[9] [strlen(argv[9])] = ' ';
- free(message);
- return 0;
- }
|
|