|
API Guide Home (Online version only) |
![]() |
00001 /****************************************************************************** 00002 * Copyright (c) 2004 palmOne, Inc. or its subsidiaries. 00003 * All rights reserved. 00004 *****************************************************************************/ 00005 /** 00006 * @ingroup Network 00007 */ 00008 00009 /** 00010 * @file PalmVPPI.h 00011 * @version 1.0 00012 * 00013 * @brief This is the API for VPN panel plug-ins (VPPIs). 00014 * 00015 * The VPN panel allows the user to manage their VPN accounts. Each plug-in provides support for a 00016 * specific VPN protocol such as PPTP or IPSec. A VPPI provides access to 00017 * the user interface of a VPN client. An NPPI (Network panel plug-in) 00018 * provides the underlying implementation as well as an alternate user 00019 * interface. 00020 * 00021 */ 00022 00023 #ifndef _PALM_VPPI_H_ 00024 #define _PALM_VPPI_H_ 00025 00026 /** Database type for VPN panel plug-ins. */ 00027 #define sysFileTVPNPanelPlugin 'Vppi' 00028 00029 /** Account name maximum length. */ 00030 #define kMaxVPNAccountNameLength 31 00031 00032 /** @brief VPN Account structure. */ 00033 typedef struct 00034 { 00035 UInt32 vppiCreator; /**< Creator ID of the VPPI that "owns" the account. */ 00036 UInt32 accountID; /**< Arbitrary 32-bit ID used by the VPI to identify the account. */ 00037 Char accountName[kMaxVPNAccountNameLength + 1]; /**< User-specified account name. */ 00038 } VPNAccountType; 00039 00040 00041 /** Launch code used by the VPN Panel to get the account list. */ 00042 #define sysVPPILaunchCmdGetAccounts sysAppLaunchCmdCustomBase // 0x8000 00043 00044 /** @brief Structure used by the VPN Panel to query the account from a VPPI. */ 00045 typedef struct 00046 { 00047 UInt32 numAccounts; /**< Number of accounts. */ 00048 VPNAccountType* accounts; /**< Array of accounts. */ 00049 Err err; /**< Error set by the VPPI before returning the account list. */ 00050 } SysVPPILaunchCmdGetAccountsType; 00051 00052 00053 /** Launch code used by the VPN Panel to edit an account. */ 00054 #define sysVPPILaunchCmdEditAccount (sysAppLaunchCmdCustomBase + 1) // 0x8001 00055 00056 /** @brief Structure used by the VPN Panel to edit an account. */ 00057 typedef struct 00058 { 00059 Boolean useWizardUI; /**< Whether to show Previous & Done buttons instead of OK & Cancel buttons. */ 00060 VPNAccountType account; /**< Account edited or created. */ 00061 Err err; /**< Return error. */ 00062 Boolean useSavedAccount; /**< Whether the account information is temporary (for saved state) or permanent. */ 00063 Boolean dirtyBit; /**< Whether any account settings have been changed. */ 00064 } SysVPPILaunchCmdEditAccountType; 00065 00066 00067 /** Launch code used by the VPN Panel to delete an account. */ 00068 #define sysVPPILaunchCmdDeleteAccount (sysAppLaunchCmdCustomBase + 2) // 0x8002 00069 00070 /** @brief Structure used by the VPN Panel to delete an account. */ 00071 typedef struct 00072 { 00073 VPNAccountType account; /**< Account to delete. */ 00074 Err err; /**< Error code. */ 00075 } SysVPPILaunchCmdDeleteAccountType; 00076 00077 00078 /** Launch code used by the VPN Panel to set the current account. */ 00079 #define sysVPPILaunchCmdSetCurrentAccount (sysAppLaunchCmdCustomBase + 3) // 0x8003 00080 00081 /** @brief Structure used by the VPN Panel to set the current account. */ 00082 typedef struct 00083 { 00084 VPNAccountType account; /**< Account to set as current account. */ 00085 Err err; /**< Error code. */ 00086 } SysVPPILaunchCmdSetCurrentAccountType; 00087 00088 00089 /** Launch code used by the VPN Panel to request the VPPI to display a dialog. */ 00090 #define sysVPPILaunchCmdPromptAndConfigure (sysAppLaunchCmdCustomBase + 4) // 0x8004 00091 00092 /** @brief Structure used by the VPN Panel to request the VPPI to display a dialog. */ 00093 typedef struct 00094 { 00095 UInt32 origCreator; /**< Creator that launched the prompt dialog (in). */ 00096 UInt32 origInstance; /**< Instance that laucnhed the prompt dialog (in). */ 00097 Err errOut; /**< Error code (out). */ 00098 } SysVPPILaunchCmdPromptAndConfigureType; 00099 00100 00101 /** Launch code used by the VPN Panel to show the progess dialog. */ 00102 #define sysVPPILaunchCmdProgressPaint (sysAppLaunchCmdCustomBase + 5) // 0x8005 00103 00104 /** @brief Structure used by the VPN Panel to show the progess dialog. */ 00105 typedef struct 00106 { 00107 UInt32 stage; /**< Stage calue sent by the VPN Shim to the VPPI (in). */ 00108 RectangleType clientRect; /**< Rectangle in which the progress dialog box is displayed (in). */ 00109 Err errOut; /**< Error code (out). */ 00110 } SysVPPILaunchCmdProgressPaintType; 00111 00112 00113 /** Launch code used by the VPN Panel to show the error dialog. */ 00114 #define sysVPPILaunchCmdErrorDialog (sysAppLaunchCmdCustomBase + 6) // 0x8006 00115 00116 /** @brief Structure used by the VPN Panel to show the error dialog. */ 00117 typedef struct 00118 { 00119 UInt32 error; /**< Error value sent by the VPN Shim (in). */ 00120 Err errOut; /**< Error code (out). */ 00121 } SysVPPILaunchCmdErrorDialogType; 00122 00123 00124 /** Launch code used by the VPN Panel to clear the password cache. */ 00125 #define sysVPPILaunchCmdClearPWCache (sysAppLaunchCmdCustomBase + 7) // 0x8007 00126 00127 /** @brief Structure used by the VPN Panel to clear the password cache. */ 00128 typedef struct 00129 { 00130 Err errOut; /**< Error code. */ 00131 } SysVPPILaunchCmdClearPWCacheType; 00132 00133 00134 /** Launch code used by the VPN Panel to determine is the VPPI will prompt for password. */ 00135 #define sysVPPILaunchCmdWillPWPrompt (sysAppLaunchCmdCustomBase + 8) // 0x8008 00136 00137 /** @brief Structure used by the VPN Panel to determine is the VPPI will prompt for password. */ 00138 typedef struct 00139 { 00140 UInt32 secsFromNow; /**< Seconds from now at which the VPPI will prompt for password (in). */ 00141 Err errOut; /**< Error code (out). */ 00142 } SysVPPILaunchCmdWillPWPromptType; 00143 00144 #endif //_PALM_VPPI_H_
| Top | Palm Developer Network © 2004-2008, Palm, Inc. All rights reserved. Generated on Fri Jun 13 10:06:55 2008 for Palm API Guide |