I am new to setting up any type of user exit so please help me along:
Receiving errors shown below in Windows Event Viewer
.. Comes up when trying to start the LibSrv after placing my ARSUSEC.DLL in the BIN directory
So it appears to me it wants to try and use it, but I'm guessing my DLL is not compiled correctly or missing something
to go along with it. Mainly because I am starting with the basic as-is application and just added a return of OKAY
( See code below also )
If someone does think it is they way I am compiling it ... Please let me know how
Or again maybe the OD server has something missing
Done so far:
Compiled clean DLL ( different ways in VS2008 and VS2005, tried different options ) .. DLL = arsusec.dll
FYI: I am compiling on my Win-XP desktop then moving the DLL over
IBM Content Manager OnDemand 8.5.0
Windows Server 2008 R2
Placing DLL at: D:\Program Files\IBM\OnDemand for Windows\bin
LibSrv Stopped ... Then Started **** WILL NOT START *** ( but then starts after removing arsusec,dll
ERRORS From Windows Event Logs - Application
==========================================================================
- System
- Provider
[ Name] OnDemand for Windows
- EventID 160
[ Qualifiers] 49152
Level 2
Task 0
Keywords 0x80000000000000
- TimeCreated
[ SystemTime] 2012-02-14T14:41:46.000000000Z
EventRecordID 180212
Channel Application
Computer USOCWOKVM002.EDSDOMOKXIX.EDS.com
Security
- EventData
D:\PROGRA~1\IBM\ONDEMA~1\bin\ARSUSEC.DLL
0
arscsx.c
150
======= AND ==============================================
System
- Provider
[ Name] OnDemand for Windows
- EventID 145
[ Qualifiers] 49152
Level 2
Task 0
Keywords 0x80000000000000
- TimeCreated
[ SystemTime] 2012-02-14T14:41:46.000000000Z
EventRecordID 180213
Channel Application
Computer USOCWOKVM002.EDSDOMOKXIX.EDS.com
Security
- EventData
109
arssrvr.c
1919
=======================================================================
MY CODE
=======================================================================
#define _ARSUSEC_C
/*********************************************************************/
/* */
/* MODULE NAME: ARSUSEC.C */
/* */
/* */
/* SYNOPSIS: OnDemand Security Exit */
/* */
/*********************************************************************/
#include "arscsxit.h"
ArcCSXitSecurityRC
ARSCSXIT_EXPORT
ARSCSXIT_API
SECURITY( ArcChar *act_userid,
ArcChar *cur_userid,
ArcChar *cur_passwd,
ArcChar *new_userid,
ArcChar *new_passwd,
ArcCSXitSecurityAction action,
ArcChar *msg,
ArcChar *clnt_id,
ArcChar *instance
)
{
ArcCSXitSecurityRC rc;
msg[0] = '\0';
rc = ARCCSXIT_SECURITY_RC_OKAY;
return( rc );
}
With some poking around I did get the LibSrv running with my arsusec.dll in place
I had to compile with VS2008 and x64 format.
But Now:
I don't know what to do to get ODWEK to use it ?
Is it arswww.cgi that is suppose to be calling it ?
If so how ? what parameters ? any suggestion would help.
All I did in the arsusec.dll so far is returning a simple
rc = ARCCSXIT_SECURITY_RC_FAILED;
But Logons are working, which I assume they should be failing if my dll is being used.
hello,
normally when you activate the dll (I don't remember for Windows how it is activated), but in Unix, you must explicitely activate it in the ars.ini file.
Once it's activated, then every login, every "security" calls will be done through this user exit.
Meaning, that you need to do nothing on ODWEK side, since everything is handle on the server side.
Now if you put rc= ARCCSXIT_SECURITY_RC_FAILED; then you cannot login anymore... meaning that if can log in, then something's wrong... you didn't activate it.
Look at the CMOD Server Admin gui, I'm pretty sure that you will be able to activate the secure dll from there.
Sincerely yours,
Alessandro
Thanks for the reply
I still can't find where I would activate it at.
May what is the "CMOD Server Admin gui"
I am looking in the "OnDemand Administrator" is that the same thing ?
If not, the please further instructions ...
Thanks again
John
Hello,
so I could get a Windows CMOD Server to "play" with it...
you need to launch the "regedit.exe".
HKEY_LOCAL_MACHINE\SOFTWARE\IBM\OnDemand for WinNT\@SRV@_INSTANCE\
where INSTANCE is the name of your CMOD Instance (eg ARCHIVE)
then you need to add a String Value called: SRVR_FLAGS_SECURITY_EXIT with the value 1 (1 to activate it, 0 to deactivate it)
Then you'll need to stop/restart CMOD.
I hope this helps a bit more!
Sincerely your,
Alessandro
PERFECT ;D
That was it ... Thank you very much
A very helpful post!!