Bug 280562 - Client interoperability problem with miCasa and ZEN agent.

Update to latest nwlogin.h and use correct params.
This commit is contained in:
Jim Norman 2007-06-08 04:32:58 +00:00
parent 6068f888d0
commit 30913d4867
3 changed files with 597 additions and 556 deletions

View File

@ -1,25 +1,24 @@
/***********************************************************************
*
* Copyright (C) 2005-2006 Novell, Inc. All Rights Reserved.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; version 2.1
* of the License.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, Novell, Inc.
*
* To contact Novell about this file by physical or electronic mail,
* you may find current contact information at www.novell.com.
*
***********************************************************************/
/****************************************************************************
Source module name: nwlgext.h
Release %version: 100 %
$Workfile: nwlgext.h $
$Revision: $
$Modtime:: $
$Copyright:
Copyright (c) 1989-1999 Novell, Inc. All Rights Reserved.
U.S. Patent Number 5,781,724 -- Novell, Inc.
THIS WORK IS SUBJECT TO U.S. AND INTERNATIONAL COPYRIGHT LAWS AND
TREATIES. NO PART OF THIS WORK MAY BE USED, PRACTICED, PERFORMED
COPIED, DISTRIBUTED, REVISED, MODIFIED, TRANSLATED, ABRIDGED, CONDENSED,
EXPANDED, COLLECTED, COMPILED, LINKED, RECAST, TRANSFORMED OR ADAPTED
WITHOUT THE PRIOR WRITTEN CONSENT OF NOVELL, INC. ANY USE OR EXPLOITATION
OF THIS WORK WITHOUT AUTHORIZATION COULD SUBJECT THE PERPETRATOR TO
CRIMINAL AND CIVIL LIABILITY.$
****************************************************************************/
#ifndef NWLOGIN_H
# include <nwlogin.h>
#endif

View File

@ -1,25 +1,19 @@
/***********************************************************************
*
* Copyright (C) 2005-2006 Novell, Inc. All Rights Reserved.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; version 2.1
* of the License.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, Novell, Inc.
*
* To contact Novell about this file by physical or electronic mail,
* you may find current contact information at www.novell.com.
*
***********************************************************************/
/****************************************************************************
Source module name: nwlogin.h
Release %version: 112 %
Copyright (c) 1989-1999 Novell, Inc. All Rights Reserved.
U.S. Patent Number 5,781,724 -- Novell, Inc.
THIS WORK IS SUBJECT TO U.S. AND INTERNATIONAL COPYRIGHT LAWS AND
TREATIES. NO PART OF THIS WORK MAY BE USED, PRACTICED, PERFORMED
COPIED, DISTRIBUTED, REVISED, MODIFIED, TRANSLATED, ABRIDGED, CONDENSED,
EXPANDED, COLLECTED, COMPILED, LINKED, RECAST, TRANSFORMED OR ADAPTED
WITHOUT THE PRIOR WRITTEN CONSENT OF NOVELL, INC. ANY USE OR EXPLOITATION
OF THIS WORK WITHOUT AUTHORIZATION COULD SUBJECT THE PERPETRATOR TO
CRIMINAL AND CIVIL LIABILITY.$
****************************************************************************/
/****************************************************************************
2-6-98 KPW remove PRE_NETWARE_LOGIN event - never used and don't plan to
2-18-98 KPW added NWLG_RESTART_PRIMARY_LOGIN restartMode
@ -35,10 +29,11 @@
#if !defined (_WINDOWS_) && !defined(_INC_WINDOWS) && !defined(__WINDOWS_H)
// take care of a compile error for modules that do not need windows.h
// but do include nwlogin.h
#if defined (N_PLAT_MSW4) || defined (N_PLAT_WNT)
typedef nptr HWND;
#else
typedef nuint HWND;
#if defined(_WIN64)
typedef __int64 INT_PTR;
#else
typedef _W64 int INT_PTR;
#endif
#endif
@ -50,11 +45,11 @@
#include <nwdsdefs.h>
#endif
#if defined (N_ARCH_32)
// #if defined (N_ARCH_32)
#if ! defined ( NWAPIDEF_H )
#include <nwapidef.h>
#endif
#endif
// #endif
#ifndef _NWDSDC_HEADER_
#include <nwdsdc.h>
@ -69,178 +64,204 @@ extern "C" {
Command Line parsing events
*/
#define NWLG_INITIALIZE 0
#define NWLG_CMD_LINE_SERVICE 1
#define NWLG_CMD_LINE_USER 2
#define NWLG_CMD_LINE_NS 3
#define NWLG_PRESCRIPT_CLS 4
#define NWLG_CMD_LINE_SCRIPT_FILE 5
#define NWLG_CMD_LINE_PROFILE 51
#define NWLG_CMD_LINE_FLAGS 52
#define NWLG_CMD_LINE_ARGS 53
#define NWLG_CMD_LINE_BIND_LOGIN 6
#define NWLG_CMD_LINE_TREE 7
#define NWLG_RESOLVE_USER_NAME 8
#define NWLG_NO_BANNER 9
#define NWLG_CMD_LINE_ARG_DONE 10
#define NWLG_CMD_LINE_HELP 11
#define NWLG_CMD_LINE_PARSING_EVENTS \
NWLG_EVENT(INITIALIZE,0) \
NWLG_EVENT(CMD_LINE_SERVICE,1) \
NWLG_EVENT(CMD_LINE_USER,2) \
NWLG_EVENT(CMD_LINE_NS,3) \
NWLG_EVENT(PRESCRIPT_CLS,4) \
NWLG_EVENT(CMD_LINE_SCRIPT_FILE,5) \
NWLG_EVENT(CMD_LINE_PROFILE,51) \
NWLG_EVENT(CMD_LINE_FLAGS,52) \
NWLG_EVENT(CMD_LINE_ARGS,53) \
NWLG_EVENT(CMD_LINE_BIND_LOGIN,6) \
NWLG_EVENT(CMD_LINE_TREE,7) \
NWLG_EVENT(RESOLVE_USER_NAME,8) \
NWLG_EVENT(NO_BANNER,9) \
NWLG_EVENT(CMD_LINE_ARG_DONE,10) \
NWLG_EVENT(CMD_LINE_HELP,11)
/*
Script related events
*/
#define NWLG_PRE_SCRIPTS 12
#define NWLG_OPEN_SCRIPT 13
#define NWLG_GET_SCRIPT_LINE 14
#define NWLG_SCRIPT_BREAK 15
#define NWLG_REWIND_SCRIPT 16
#define NWLG_BIND_ATTACH 17
#define NWLG_TERMINATE 18
#define NWLG_CLEAR_SCREEN 19
#define NWLG_DOS_COMSPEC 20
#define NWLG_DS_CONTEXT 21
#define NWLG_DISP_FILE 22
#define NWLG_DOS_BREAK 23
#define NWLG_DOS_VERIFY 24
#define NWLG_DRIVE 25
#define NWLG_EXIT 26
#define NWLG_EXEC 27
#define NWLG_FIRE_PHASERS 28
#define NWLG_DISP_LTIME 29
#define NWLG_MACHINE 30
#define NWLG_MEMBER_OF 31
#define NWLG_NO_DEFAULT 32
#define NWLG_TERM_CMD 33
#define NWLG_PAUSE 34
#define NWLG_DOS_PC_COMPAT 35
#define NWLG_PROFILE 36
#define NWLG_NOTHING 37
#define NWLG_BIND_SCRIPT_SERVER 38
#define NWLG_SET_ENV_VAR 39
#define NWLG_SYNC_TIME_FLAG 40
#define NWLG_DOS_SWAP_PATH 41
#define NWLG_DISP_LINE 42
#define NWLG_INCLUDE 43
#define NWLG_TREE_ATTACH 44
#define NWLG_SWAP_CMD 45
#define NWLG_NO_SWAP_CMD 46
#define NWLG_CHDIR 47
#define NWLG_LOGOUT_ALL 48
#define NWLG_LOGOUT_ONE 49
#define NWLG_CONTINUE 50
#define NWLG_RUN_SCRIPT 60
#define NWLG_POST_SCRIPTS 61
#define NWLG_DISP_BANNER 62
#define NWLG_PWD_EXP_CHK 63
#define NWLG_PWD_EXP_CHK_STAT 64
#define NWLG_PWD_EXP_UPD 65
#define NWLG_SCRIPT_EVENTS \
NWLG_EVENT(PRE_SCRIPTS,12) \
NWLG_EVENT(OPEN_SCRIPT,13) \
NWLG_EVENT(GET_SCRIPT_LINE,14) \
NWLG_EVENT(SCRIPT_BREAK,15) \
NWLG_EVENT(REWIND_SCRIPT,16) \
NWLG_EVENT(BIND_ATTACH,17) \
NWLG_EVENT(TERMINATE,18) \
NWLG_EVENT(CLEAR_SCREEN,19) \
NWLG_EVENT(DOS_COMSPEC,20) \
NWLG_EVENT(DS_CONTEXT,21) \
NWLG_EVENT(DISP_FILE,22) \
NWLG_EVENT(DOS_BREAK,23) \
NWLG_EVENT(DOS_VERIFY,24) \
NWLG_EVENT(DRIVE,25) \
NWLG_EVENT(EXIT,26) \
NWLG_EVENT(EXEC,27) \
NWLG_EVENT(FIRE_PHASERS,28) \
NWLG_EVENT(DISP_LTIME,29) \
NWLG_EVENT(MACHINE,30) \
NWLG_EVENT(MEMBER_OF,31) \
NWLG_EVENT(NO_DEFAULT,32) \
NWLG_EVENT(TERM_CMD,33) \
NWLG_EVENT(PAUSE,34) \
NWLG_EVENT(DOS_PC_COMPAT,35) \
NWLG_EVENT(PROFILE,36) \
NWLG_EVENT(NOTHING,37) \
NWLG_EVENT(BIND_SCRIPT_SERVER,38) \
NWLG_EVENT(SET_ENV_VAR,39) \
NWLG_EVENT(SYNC_TIME_FLAG,40) \
NWLG_EVENT(DOS_SWAP_PATH,41) \
NWLG_EVENT(DISP_LINE,42) \
NWLG_EVENT(INCLUDE,43) \
NWLG_EVENT(TREE_ATTACH,44) \
NWLG_EVENT(SWAP_CMD,45) \
NWLG_EVENT(NO_SWAP_CMD,46) \
NWLG_EVENT(CHDIR,47) \
NWLG_EVENT(LOGOUT_ALL,48) \
NWLG_EVENT(LOGOUT_ONE,49) \
NWLG_EVENT(CONTINUE,50) \
NWLG_EVENT(RUN_SCRIPT,60) \
NWLG_EVENT(POST_SCRIPTS,61) \
NWLG_EVENT(DISP_BANNER,62) \
NWLG_EVENT(PWD_EXP_CHK,63) \
NWLG_EVENT(PWD_EXP_CHK_STAT,64) \
NWLG_EVENT(PWD_EXP_UPD,65)
/*
Connection Events
*/
#define NWLG_CONN_GET 90
#define NWLG_CONN_AUTH 91
#define NWLG_CONN_EXPIRED 92
#define NWLG_SYNC_PWD_START 93
#define NWLG_SYNC_PWD_END 94
#define NWLG_SYNC_LIST_BLD 95
#define NWLG_SYNC_LIST_UPD 96
#define NWLG_SYNC_LIST_FREE 97
#define NWLG_PRE_LOGIN 98
#define NWLG_CONN_EVENTS \
NWLG_EVENT(CONN_GET,90) \
NWLG_EVENT(CONN_AUTH,91) \
NWLG_EVENT(CONN_EXPIRED,92) \
NWLG_EVENT(SYNC_PWD_START,93) \
NWLG_EVENT(SYNC_PWD_END,94) \
NWLG_EVENT(SYNC_LIST_BLD,95) \
NWLG_EVENT(SYNC_LIST_UPD,96) \
NWLG_EVENT(SYNC_LIST_FREE,97) \
NWLG_EVENT(PRE_LOGIN,98)
/* Internal SYSTEM type message */
#define NWLG_SYSTEM 100
#define NWLG_NETWARE_LOGIN 101
#define NWLG_ELSE 190
#define NWLG_END 191
#define NWLG_GOTO 192
#define NWLG_IF 193
#define NWLG_IFDO 194
#define NWLG_LABEL 195
#define NWLG_MAP 196
#define NWLG_SHIFT 197
#define NWLG_SYSTEM_EVENTS \
NWLG_EVENT(SYSTEM,100) \
NWLG_EVENT(NETWARE_LOGIN,101) \
NWLG_EVENT(START_LOGIN,102) \
NWLG_EVENT(ELSE,190) \
NWLG_EVENT(END,191) \
NWLG_EVENT(GOTO,192) \
NWLG_EVENT(IF,193) \
NWLG_EVENT(IFDO,194) \
NWLG_EVENT(LABEL,195) \
NWLG_EVENT(MAP,196) \
NWLG_EVENT(SHIFT,197)
/*
Map events
*/
/* Individual map events */
#define NWLG_MAP_ADD 200
#define NWLG_MAP_DEL 201
#define NWLG_MAP_CHANGE 202
#define NWLG_MAP_MOVE 203
#define NWLG_MAP_DISP 204
#define NWLG_MAP_MSG 205
#define NWLG_MAP_ERR 206
#define NWLG_MAP_EVENTS \
NWLG_EVENT(MAP_ADD,200) \
NWLG_EVENT(MAP_DEL,201) \
NWLG_EVENT(MAP_CHANGE,202) \
NWLG_EVENT(MAP_MOVE,203) \
NWLG_EVENT(MAP_DISP,204) \
NWLG_EVENT(MAP_MSG,205) \
NWLG_EVENT(MAP_ERR,206)
/* detail map events from parser
summary events below are passed to event handler
*/
#define NWLG_MAP_ADD_DRV 210
#define NWLG_MAP_ADD_DRV_TO_SDRV 211
#define NWLG_MAP_ADD_SRCH 212
#define NWLG_MAP_ADD_SRCH_TO_SDRV 213
#define NWLG_MAP_CHG_DRV_TO_SDRV 214
#define NWLG_MAP_CHG_INS_DRV_TO_SDRV 215
#define NWLG_MAP_CHG_SRCH 216
#define NWLG_MAP_DEL_DRV 217
#define NWLG_MAP_DEL_SRCH 218
#define NWLG_MAP_DISP_ALL_DRVS 219
#define NWLG_MAP_DISP_DRV 220
#define NWLG_MAP_DISP_OFF 221
#define NWLG_MAP_DISP_ON 222
#define NWLG_MAP_DISP_SRCH 223
#define NWLG_MAP_ERRORS_OFF 224
#define NWLG_MAP_ERRORS_ON 225
#define NWLG_MAP_INS_SRCH 226
#define NWLG_MAP_INS_SRCH_TO_SDRV 227
#define NWLG_MAP_NEXT_DRV 228
#define NWLG_MAP_DETAIL_EVENTS \
NWLG_EVENT(MAP_ADD_DRV,210) \
NWLG_EVENT(MAP_ADD_DRV_TO_SDRV,211) \
NWLG_EVENT(MAP_ADD_SRCH,212) \
NWLG_EVENT(MAP_ADD_SRCH_TO_SDRV,213) \
NWLG_EVENT(MAP_CHG_DRV_TO_SDRV,214) \
NWLG_EVENT(MAP_CHG_INS_DRV_TO_SDRV,215) \
NWLG_EVENT(MAP_CHG_SRCH,216) \
NWLG_EVENT(MAP_DEL_DRV,217) \
NWLG_EVENT(MAP_DEL_SRCH,218) \
NWLG_EVENT(MAP_DISP_ALL_DRVS,219) \
NWLG_EVENT(MAP_DISP_DRV,220) \
NWLG_EVENT(MAP_DISP_OFF,221) \
NWLG_EVENT(MAP_DISP_ON,222) \
NWLG_EVENT(MAP_DISP_SRCH,223) \
NWLG_EVENT(MAP_ERRORS_OFF,224) \
NWLG_EVENT(MAP_ERRORS_ON,225) \
NWLG_EVENT(MAP_INS_SRCH,226) \
NWLG_EVENT(MAP_INS_SRCH_TO_SDRV,227) \
NWLG_EVENT(MAP_NEXT_DRV,228)
/*
event types for extended script commands and to introduce some new hooks
used by Mobile
*/
#define NWLG_DISP_WIBBLE 300
#define NWLG_CAPTURE_PRINTER 301
#define NWLG_DCACHE_ADD 302
#define NWLG_DCACHE_FIND 303
#define NWLG_DO_GOTO 305
#define NWLG_AVAILABLE_DRIVE 309
#define NWLG_NOTIFY_PARENT_WINDOW 310
#define NWLG_PARSE_SCRIPT_LINE 311
#define NWLG_NOTIFY_LOGIN_NAMES 312
#define NWLG_NOTIFY_PROGRESS 313
#define NWLG_GET_LOCATION_NAME 314
#define NWLG_GET_FIRST_NETWORK_DRIVE 315
#define NWLG_SCRIPT_EX_EVENTS \
NWLG_EVENT(CAPTURE_PRINTER,301) \
NWLG_EVENT(DCACHE_ADD,302) \
NWLG_EVENT(DCACHE_FIND,303) \
NWLG_EVENT(DO_GOTO,305) \
NWLG_EVENT(AVAILABLE_DRIVE,309) \
NWLG_EVENT(NOTIFY_PARENT_WINDOW,310) \
NWLG_EVENT(PARSE_SCRIPT_LINE,311) \
NWLG_EVENT(NOTIFY_LOGIN_NAMES,312) \
NWLG_EVENT(GET_LOCATION_NAME,314) \
NWLG_EVENT(GET_FIRST_NETWORK_DRIVE,315)
/*
Event types for communication between extensions and default UI.
*/
#define NWLG_UI_DATA_CHANGED 400
/* Event types for NWLG_UI_DATA_CHANGED */
# define NWLG_UI_DC_USERNAME 0x0101
# define NWLG_UI_DC_TREE_LOGIN 0x0201
# define NWLG_UI_DC_TREE 0x0202
# define NWLG_UI_DC_SERVER 0x0203
# define NWLG_UI_DC_BINDERY_CONN 0x0204
# define NWLG_UI_DC_CONTEXT 0x0205
# define NWLG_UI_DC_CLEAR_CONNS 0x0206
# define NWLG_UI_DC_RUN_SCRIPTS 0x0301
# define NWLG_UI_DC_DISPLAY_RESULTS 0x0302
# define NWLG_UI_DC_AUTO_CLOSE 0x0303
# define NWLG_UI_DC_LOGIN_SCRIPT 0x0304
# define NWLG_UI_DC_PROFILE_SCRIPT 0x0305
# define NWLG_UI_DC_VAR 0x0400
# define NWLG_UI_DC_MOBILE_PROFILE 0x4101
# define NWLG_UI_DC_CONNECT_OFFLINE 0x4102
# define NWLG_UI_DC_DEBUG_MODE 0x4301
# define NWLG_UI_DC_VERBOSE_MODE 0x4302
#define NWLG_EXT_UI_EVENTS \
NWLG_EVENT(UI_DATA_CHANGED,400) \
NWLG_EVENT(UI_DC_USERNAME,0x0101) \
NWLG_EVENT(UI_DC_TREE_LOGIN,0x0201) \
NWLG_EVENT(UI_DC_TREE,0x0202) \
NWLG_EVENT(UI_DC_SERVER,0x0203) \
NWLG_EVENT(UI_DC_BINDERY_CONN,0x0204) \
NWLG_EVENT(UI_DC_CONTEXT,0x0205) \
NWLG_EVENT(UI_DC_CLEAR_CONNS,0x0206) \
NWLG_EVENT(UI_DC_RUN_SCRIPTS,0x0301) \
NWLG_EVENT(UI_DC_DISPLAY_RESULTS,0x0302) \
NWLG_EVENT(UI_DC_AUTO_CLOSE,0x0303) \
NWLG_EVENT(UI_DC_LOGIN_SCRIPT,0x0304) \
NWLG_EVENT(UI_DC_PROFILE_SCRIPT,0x0305) \
NWLG_EVENT(UI_DC_VAR,0x0400) \
NWLG_EVENT(FORGOTTEN_PWD_CLICK,0x0500) \
NWLG_EVENT(DHCP_CHECK, 0x0501) \
NWLG_EVENT(UI_DC_MOBILE_PROFILE,0x4101) \
NWLG_EVENT(UI_DC_CONNECT_OFFLINE,0x4102) \
NWLG_EVENT(UI_DC_DEBUG_MODE,0x4301) \
NWLG_EVENT(UI_DC_VERBOSE_MODE,0x4302)
#define NWLG_MISC_EVENTS \
NWLG_EVENT(UNKNOWN,999)
#define NWLG_EVENT_LIST \
NWLG_CMD_LINE_PARSING_EVENTS \
NWLG_SCRIPT_EVENTS \
NWLG_CONN_EVENTS \
NWLG_SYSTEM_EVENTS \
NWLG_MAP_EVENTS \
NWLG_MAP_DETAIL_EVENTS \
NWLG_SCRIPT_EX_EVENTS \
NWLG_EXT_UI_EVENTS \
NWLG_MISC_EVENTS \
#undef NWLG_EVENT
#define NWLG_EVENT(name,number) \
NWLG_##name=number,
typedef enum { NWLG_EVENT_LIST } NWLG_Event_t ;
#define NWLG_UNKNOWN 999
/*
END OF Event constants
*/
@ -353,7 +374,7 @@ extern "C" {
#define NWLG_CL_FLAG_CLS 0x00000001 /* Clear screen before login */
#define NWLG_CL_FLAG_NS 0x00000002 /* Attach to a server and do not run script */
#define NWLG_CL_FLAG_ATTACH 0x00000002
#define NWLG_CL_FLAG_BIND 0x00000004 /* Force bindery mode login */
#define NWLG_CL_FLAG_UNUSED 0x00000004 /* Was bindery flag */
#define NWLG_CL_FLAG_TREE 0x00000008 /* name specified on cmd line is a tree name */
#define NWLG_CL_FLAG_NB 0x00000010 /* Do not show login banner */
@ -374,6 +395,11 @@ extern "C" {
#define NWLG_CL_FLAG_MAP_ROOT_OFF 0x00010000 /* do not force map root on NT or other platform that can handle relative mapping */
#define NWLG_CL_FLAG_START_UI 0x00020000 /* Internal flag to that start_UI in progress */
#define NWLG_CL_FLAG_DUI 0x00040000 /* Internal flag to set skipUI = NWLG_OPTION_ON | NWLG_DISABLE_UI */
#define NWLG_CL_FLAG_STATE_ADVANCED 0x00080000 /* Internal flag to force the Advanced dialog to display */
#define NWLG_CL_FLAG_FPW 0x00100000 /* Internal flag to signal Forgotten Password Invocation */
#define NWLG_CL_FLAG_RUN_SCRIPT 0x20000000 /* Internal flag to run scripts */
#define NWLG_CL_FLAG_CLEAR_CONN 0x40000000 /* Internal flag to clear connection (logout) before login */
#define NWLG_CL_FLAG_DEBUG 0x80000000 /* API in debug mode */
@ -426,7 +452,6 @@ extern "C" {
#define NWLG_IO_MSG_PAUSE 0
#define NWLG_IO_IDENTITY 1
#define NWLG_IO_YES_NO 2
#define NWLG_IO_EXP_PWD 22
#define NWLG_IO_DATA_BLOCK 3
#define NWLG_IO_BANNER 4
#define NWLG_IO_FILE 5
@ -434,8 +459,6 @@ extern "C" {
#define NWLG_IO_CLS 7
#define NWLG_IO_SOUNDS 8
#define NWLG_IO_CHANGE_PWD 9
#define NWLG_IO_PWD_CHG 1
#define NWLG_IO_PWD_SYNC 0
#define NWLG_IO_CONFIRM_REATTACH 10
#define NWLG_IO_DOS_SWAP_PATH 11
#define NWLG_IO_START_UI 12
@ -443,6 +466,14 @@ extern "C" {
#define NWLG_IO_START_LOG 14
#define NWLG_IO_FINISH_LOG 15
#define NWLG_IO_WAIT 16
#define NWLG_IO_GET_TEXT 17
#define NWLG_IO_EXP_PWD 22
#define NWLG_IO_LOGIN_CR 23
#define NWLG_IO_PWD_CHG 1
#define NWLG_IO_PWD_SYNC 0
#define NWLG_IO_WAIT_ON 1
#define NWLG_IO_WAIT_OFF 0
@ -487,25 +518,16 @@ extern "C" {
#define NWLG_EVT_UNTIL_OK 3
#define NWLG_EVT_UNTIL_FAIL 4
/*
-> NT ONLY
Defines for restartMode in startinfo structure.
Normal processing is NONE. Initial login on Wnt require that we authenticate
then roll out to login to the workstation. Login is then restarted after
the authenticate.
GINA flag indicates that GINA does initial login (password expiration handled
differently)
*/
#define NWLG_RESTART_NONE 0x0000
/* only set during initial pass of NT login */
#define NWLG_RESTART_AUTH_ONLY 0x0001
#define NWLG_RESTART_SCRIPT 0x0002
/* only set if netware authentication is performed in another module */
#define NWLG_RESTART_ALT_AUTH 0x0004
#define NWLG_RESTART_UNLOCK 0x0008
#define NWLG_RESTART_CITRIX_AUTH 0x0080
#define NWLG_RESTART_NETWARE_LOGIN 0x0100
#define NWLG_RESTART_PRIMARY_LOGIN 0x4000
#define NWLG_RESTART_GINA_AUTH 0x8000
/*
Flag set/clear/test macros
@ -523,9 +545,9 @@ extern "C" {
/***
Version information
***/
#define NWLG_MAJOR_VER 1
#define NWLG_MAJOR_VER 5
#define NWLG_MINOR_VER 0
#define NWLG_REV_VER 7
#define NWLG_REV_VER 0
#define NWLGSetVersionP( pVersion ) pVersion->major = NWLG_MAJOR_VER;\
pVersion->minor=NWLG_MINOR_VER;pVersion->revision = NWLG_REV_VER;
@ -551,8 +573,8 @@ N_TYPEDEF_CALLBACK( NWCCODE, pEVTSend )
nint event,
nint eventType,
nint eventSubType,
nparam param1,
nparam param2,
INT_PTR param1,
INT_PTR param2,
nflag32 flags
);
@ -562,8 +584,8 @@ N_TYPEDEF_CALLBACK( NWCCODE, pEvtHndlr )
nint event,
nint eventType,
nint eventSubType,
nparam param1,
nparam param2,
INT_PTR param1,
INT_PTR param2,
nflag32 flag
);
@ -571,8 +593,8 @@ N_TYPEDEF_CALLBACK( NWCCODE, pIOHndlr )
(
pNWLGAccessRec pAccess,
nint ioEvent,
nparam param1,
nparam param2,
INT_PTR param1,
INT_PTR param2,
nflag32 flags
);
@ -587,7 +609,7 @@ N_TYPEDEF_CALLBACK( NWCCODE, pIOHndlr )
typedef struct tagNWLGAccessRec
{
nid id; /* event handlers' unique id assigned by NWLogin */
INT_PTR id; /* event handlers' unique id assigned by NWLogin */
NWCCODE status; /* NWLG_OK, ... */
NWRCODE errCode; /* Additional error code information */
pEvtHndlr pEventHandler; /* callback to extension Event Handler */
@ -649,7 +671,7 @@ typedef struct tagNWLGStartInfo
NWVersion APIVersion;
pNWLGStartInfoData dataList;// linked list pointer or NULL
pEVTSend pNWLGEVTSend;
nint useStartInfo; // TRUE= info in structure, FALSE= info in cmdline
nint useStartInfo; // NWLG_STARTINFO_NONE:0, NWLG_STARTINFO_USE:1, NWLG_STARTINFO_CMDLINE:2
nint serverLen;
pnstr server; // server to log into
nint treeLen;
@ -672,7 +694,7 @@ typedef struct tagNWLGStartInfo
pnstr swapPath; // DOS only
pNWLGStartInfoCmdArgs cmdLine;// linked list of command line args (%2 %3 %4...%MAX_SCRIPT_ARGS+2)
nbool noBanner;
nbool bindery; // force bindery conns
nbool _unused; // force bindery conns
nbool clearConns; // combination of /NS
nbool clearScreen; // cmd line versions
nbool singleTree; // TRUE = do not allow multi-tree login
@ -713,7 +735,21 @@ typedef NWLGStartInfo N_FAR * pNWLGStartInfo;
#define NWLGID_SI_ORIG 0x00000002L /* Original NWLGStartInfo */
#define NWLGID_UI 0x00000011L /* NWLGUIStartInfo */
#define NWLGID_UI_ORIG 0x00000012L /* Original NWLGUIStartInfo */
#define NWLGID_SSO 0x00000040L /* NWLGSSOInfo */
//
// Other NWLGStartInfoData ID types not defined here:
//
// #define NWLGID_LOCKED_9X 0x00000023 /* UNLOCK.H */
// #define NWLGID_CMD_LINE_INFO 0x00000030 /* NWLGUICL.H */
// #define NWLGID_TAB_BINDERY 0x00000031 /* AXBNDRYTAB.H */
// #define NWLGID_TAB_CRED 0x00000032 /* AXCREDTAB.H */
// #define NWLGID_TAB_CREDNT 0x00000033 /* AXCREDNTTAB.H */
// #define NWLGID_TAB_DIALUP 0x00000034 /* AXDIALTAB.H */
// #define NWLGID_TAB_NDS 0x00000035 /* AXNDSTAB.H */
// #define NWLGID_TAB_SCRIPT 0x00000036 /* AXSCRIPTTAB.H */
// #define NWLGID_NMAS 0x00000055 /* NWLNMAS.H */
// #define NWLGID_UI_CONTAINER 0x00000056 /* LOGW32DLG.H */
//
/* End of StartInfo */
/***************************************************************************/
@ -745,6 +781,8 @@ typedef struct tagNWLGUserIDStruct
pnstr tree;
pnstr szContext;
nbool treeLogin; /* tree or server login */
char hintMagic[4]; /* if set to "HINT" then pointer to string follows */
pnstr pHint;
} NWLGUserID;
typedef NWLGUserID N_FAR * pNWLGUserID;
@ -787,7 +825,6 @@ typedef NWLGScriptInfo N_FAR * pNWLGScriptInfo;
NWLoginInit
(
pNWLGAccessRec pAccess,
pNWVersion pCompiledVersion,
pNWVersion pRuntimeVersion
);
@ -826,8 +863,8 @@ typedef NWLGScriptInfo N_FAR * pNWLGScriptInfo;
nint event,
nint eventType,
nint eventSubType,
nparam param1,
nparam param2,
INT_PTR param1,
INT_PTR param2,
nflag32 flags
);
@ -838,8 +875,8 @@ typedef NWLGScriptInfo N_FAR * pNWLGScriptInfo;
nint event,
nint eventType,
nint eventSubType,
nparam param1,
nparam param2,
INT_PTR param1,
INT_PTR param2,
nflag32 flags
);
@ -867,7 +904,7 @@ typedef NWLGScriptInfo N_FAR * pNWLGScriptInfo;
(
nint identifier,
nint itemIndex,
nptr value
INT_PTR value
);
N_EXTERN_LIBRARY( NWCCODE )
@ -892,8 +929,8 @@ typedef NWLGScriptInfo N_FAR * pNWLGScriptInfo;
nint event,
nint eventType,
nint eventSubType,
nparam param1,
nparam param2,
INT_PTR param1,
INT_PTR param2,
nflag32 flags
);
@ -902,10 +939,15 @@ typedef NWLGScriptInfo N_FAR * pNWLGScriptInfo;
(
pNWLGAccessRec pAccess,
nint ioEvent,
nparam param1,
nparam param2,
INT_PTR param1,
INT_PTR param2,
nflag32 flags
);
N_EXTERN_LIBRARY( NWCCODE )
_NWLGGetInitialConn
(
pNWLGAccessRec pAccess
);
#ifdef __cplusplus
}
#endif

View File

@ -331,8 +331,8 @@ N_GLOBAL_CALLBACK(NWCCODE)
OurIOHandler(
pNWLGAccessRec pAccess,
nint ioEvent,
nparam param1,
nparam param2,
INT_PTR param1,
INT_PTR param2,
nflag32 flags
)
//=======================================================================--