RASENTRY    
[New
- Windows NT]
The RASENTRY
structure describes a phone-book entry. The RasSetEntryProperties and RasGetEntryProperties functions use this
structure to set and retrieve the properties of a phone-book entry.
typedef struct tagRASENTRY { 
  DWORD     
dwSize;
  DWORD      dwfOptions;
  //
  //
Location/phone number.
  //
  DWORD      dwCountryID;
  DWORD      dwCountryCode;
  TCHAR      szAreaCode[ RAS_MaxAreaCode + 1 ];
  TCHAR      szLocalPhoneNumber[ RAS_MaxPhoneNumber +
1 ];
  DWORD      dwAlternateOffset;
  //
  // PPP/Ip
  //
 
RASIPADDR  ipaddr;
 
RASIPADDR  ipaddrDns;
 
RASIPADDR  ipaddrDnsAlt;
 
RASIPADDR  ipaddrWins;
 
RASIPADDR  ipaddrWinsAlt;
  //
  // Framing
  //
  DWORD      dwFrameSize;
  DWORD      dwfNetProtocols;
  DWORD      dwFramingProtocol;
  //
  // Scripting
  //
  TCHAR      szScript[ MAX_PATH ];
  //
  // AutoDial
  //
  TCHAR       szAutodialDll[ MAX_PATH ];
  TCHAR       szAutodialFunc[ MAX_PATH ];
  //
  // Device
  //
  TCHAR      szDeviceType[ RAS_MaxDeviceType + 1 ];
  TCHAR      szDeviceName[ RAS_MaxDeviceName + 1 ];
  //
  // X.25
  //
  TCHAR      szX25PadType[ RAS_MaxPadType + 1 ];
  TCHAR      szX25Address[ RAS_MaxX25Address + 1 ];
  TCHAR      szX25Facilities[ RAS_MaxFacilities + 1 ];
  TCHAR      szX25UserData[ RAS_MaxUserData + 1 ];
  DWORD      dwChannels;
  //
  // Reserved
  //
  DWORD       dwReserved1;
  DWORD       dwReserved2;
#if (WINVER >= 0x401)
  //
  // Multilink
  //
  DWORD       dwSubEntries;
  DWORD       dwDialMode;
  DWORD       dwDialExtraPercent;
  DWORD       dwDialExtraSampleSeconds;
  DWORD       dwHangUpExtraPercent;
  DWORD       dwHangUpExtraSampleSeconds;
  //
  // Idle
timeout
  //
  DWORD       dwIdleDisconnectSeconds;
#endif
} RASENTRY;
 
Members
dwSize
Specifies the
size, in bytes, of the RASENTRY structure. Before calling RasSetEntryProperties or RasGetEntryProperties, set dwSize to sizeof(RASENTRY) to identify the version of the structure.
dwfOptions
A set of bit
flags that specify connection options. You can set one or more of the following
flags.
| Flag | Description | 
| RASEO_UseCountryAndAreaCodes | If this
  flag is set, the dwCountryID, dwCountryCode, and szAreaCode
  members are used to construct the phone number. If this flag is not set,
  these members are ignored. This flag
  corresponds to the Use Country and Area Codes check box in the Phone dialog
  box. | 
| RASEO_SpecificIpAddr | If this
  flag is set, RAS tries to use the IP address specified by ipaddr as
  the IP address for the dial-up connection. If this flag is not set, the value
  of the ipaddr member is ignored. Setting the
  RASEO_SpecificIpAddr flag corresponds to selecting the Specify an IP Address
  setting in the TCP/IP settings dialog box. Clearing the RASEO_SpecificIpAddr
  flag corresponds to selecting the Server Assigned IP Address setting in the
  TCP/IP settings dialog box. Currently,
  an IP address set in the phone-book entry properties or retrieved from a server
  overrides the IP address set in the network control panel.  | 
| RASEO_SpecificNameServers | If this
  flag is set, RAS uses the ipaddrDns, ipaddrDnsAlt, ipaddrWins, and ipaddrWinsAlt
  members to specify the name server addresses for the dial-up connection. If
  this flag is not set, RAS ignores these members.  Setting the
  RASEO_SpecificNameServers flag corresponds to selecting the Specify Name
  Server Addresses setting in the TCP/IP Settings dialog box. Clearing the
  RASEO_SpecificNameServers flag corresponds to selecting the Server Assigned
  Name Server Addresses setting in the TCP/IP Settings dialog box. | 
| RASEO_IpHeaderCompression | If this
  flag is set, RAS negotiates to use IP header compression on PPP connections.  If this
  flag is not set, IP header compression is not negotiated. This flag
  corresponds to the Use IP Header Compression check box in the TCP/IP settings
  dialog box. It is generally advisable to set this flag because IP header compression
  significantly improves performance. The flag should be cleared only when
  connecting to a server that does not correctly negotiate IP header
  compression. | 
| RASEO_RemoteDefaultGateway | If this
  flag is set, the default route for IP packets is through the dial-up adapter
  when the connection is active. If this flag is clear, the default route is
  not modified.  This flag
  corresponds to the Use Default Gateway on Remote Network check box in the
  TCP/IP settings dialog box. | 
| RASEO_DisableLcpExtensions | If this
  flag is set, RAS disables the PPP LCP extensions defined in RFC 1570. This
  may be necessary to connect to certain older PPP implementations, but
  interferes with features such as server callback. Do not set this flag unless
  specifically required. | 
| RASEO_TerminalBeforeDial | If this
  flag is set, RAS displays a terminal window for user input before dialing the
  connection. | 
| RASEO_TerminalAfterDial | If this
  flag is set, RAS displays a terminal window for user input after dialing the
  connection.  Do not set
  this flag if a dial-up networking script is to be associated with the
  connection, because scripting has its own terminal implementation. | 
| RASEO_ModemLights | This flag
  is currently ignored.  | 
| RASEO_SwCompression | If this
  flag is set, software compression is negotiated on the link. Setting this
  flag causes the PPP driver to attempt to negotiate CCP with the server. This
  flag should be set by default, but clearing it can reduce the negotiation
  period if the server does not support a compatible compression protocol. | 
| RASEO_RequireEncryptedPw | If this
  flag is set, only secure password schemes can be used to authenticate the
  client with the server. This prevents the PPP driver from using the PAP
  plain-text authentication protocol to authenticate the client. The CHAP and
  SPAP authentication protocols are also supported. Clear this flag for
  increased interoperability, and set it for increased security. This flag
  corresponds to the Require Encrypted Password check box in the Security
  dialog box. See also RASEO_RequireMsEncryptedPw. | 
| RASEO_RequireMsEncryptedPw | If this
  flag is set, only Microsoft s secure
  password schemes can be used to authenticate the client with the server. This
  prevents the PPP driver from using the PPP plain-text authentication
  protocol, MD5-CHAP, MS-CHAP, or SPAP. The flag should be cleared for maximum
  interoperability and should be set for maximum security. This flag takes
  precedence over RASEO_RequireEncryptedPw. This flag
  corresponds to the Require Microsoft Encrypted Password check box in the
  Security dialog box. See also RASEO_RequireDataEncryption. | 
| RASEO_RequireDataEncryption | If this
  flag is set, data encryption must be negotiated successfully or the
  connection should be dropped. This flag is ignored unless
  RASEO_RequireMsEncryptedPw is also set. This flag
  corresponds to the Require Data Encryption check box in the Security dialog
  box. | 
| RASEO_NetworkLogon | If this
  flag is set, RAS logs on to the network after the point-to-point connection
  is established. This flag
  currently has no effect under Windows NT. | 
| RASEO_UseLogonCredentials | If this
  flag is set, RAS uses the user name, password, and domain of the currently
  logged-on user when dialing this entry. This flag is ignored unless
  RASEO_RequireMsEncryptedPw is also set.  Note that
  this setting is ignored by the RasDial function, where specifying empty strings for
  the szUserName and szPassword members of the RASDIALPARAMS structure gives the same
  result. This flag
  corresponds to the Use Current Username and Password check box in the
  Security dialog box. | 
| RASEO_PromoteAlternates | This flag
  has an effect when alternate phone numbers are defined by the dwAlternateOffset
  member. If this flag is set, an alternate phone number that connects
  successfully becomes the primary phone number, and the current primary phone
  number is moved to the alternate list. This flag
  corresponds to the check box in the Alternate Numbers dialog box. | 
| RASEO_SecureLocalFiles | Windows
  NT only: If this flag is set, RAS
  checks for existing remote file system and remote printer bindings before
  making a connection with this entry. Typically, you set this flag on
  phone-book entries for public networks to remind users to break connections
  to their private network before connecting to a public network. | 
dwCountryID
Specifies the
TAPI country identifier. Use the RasGetCountryInfo function to enumerate
country identifiers. This member is ignored unless the dwfOptions member
specifies the RASEO_UseCountryAndAreaCodes flag.
dwCountryCode
Specifies the
country code portion of the phone number. The country code must correspond to
the country identifier specified by dwCountryID. If dwCountryCode
is zero, the country code is based on the country identifier specified by dwCountryID.
This member is ignored unless dwfOptions specifies the
RASEO_UseCountryAndAreaCodes flag.
szAreaCode
Specifies the
area code as a null-terminated string. If the dialing location does not have an
area code, specify an empty string (  ).
Do not include brackets or other delimiters in the area code string. (For
example,  206  is a valid
area code;  (206)  is not. This
member is ignored unless the dwfOptions member specifies the
RASEO_UseCountryAndAreaCodes flag.
szLocalPhoneNumber
Specifies a
null-terminated string containing a telephone number. The way RAS uses this
string depends on whether the dwfOptions member specifies the
RASEO_UseCountryAndAreaCodes flag. If the flag is set, RAS combines szLocalPhoneNumber
with the country and area codes specified by the dwCountryID, dwCountryCode
, and szAreaCode members. If the flag is not set, RAS uses the szLocalPhoneNumber
string as the entire phone number.
dwAlternateOffset
Specifies the
offset, in bytes, from the beginning of the structure to a list of consecutive
null-terminated strings. The last string is terminated by two consecutive null
characters. The strings are alternate phone numbers that RAS dials in the order
listed if the primary number (see szLocalPhoneNumber) fails to connect.
The alternate phone number strings are ANSI or Unicode, depending on whether
you use the ANSI or Unicode version of the structure.
ipaddr
Specifies the
IP address to be used while this connection is active. This member is ignored
unless dwfOptions specifies the RASEO_SpecificIpAddr flag.
ipaddrDns
Specifies the
IP address of the DNS server to be used while this connection is active. This
member is ignored unless dwfOptions specifies the
RASEO_SpecificNameServers flag.
ipaddrDnsAlt
Specifies the
IP address of a secondary or backup DNS server to be used while this connection
is active. This member is ignored unless dwfOptions specifies the
RASEO_SpecificNameServers flag.
ipaddrWins
Specifies the
IP address of the WINS server to be used while this connection is active. This
member is ignored unless dwfOptions specifies the
RASEO_SpecificNameServers flag.
ipaddrWinsAlt
Specifies the
IP address of a secondary WINS server to be used while this connection is
active. This member is ignored unless dwfOptions specifies the
RASEO_SpecificNameServers flag.
dwFrameSize
Specifies the
network protocol frame size. The value should be either 1006 or 1500. This
member is ignored unless dwFramingProtocol specifies the RASFP_Slip
flag. 
dwfNetProtocols
Specifies the
network protocols to negotiate. This member can be a combination of the
following flags. 
| Flag | Description | 
| RASNP_Netbeui | Negotiate
  the NetBEUI protocol. | 
| RASNP_Ipx | Negotiate
  the IPX protocol. | 
| RASNP_Ip | Negotiate
  the TCP/IP protocol. | 
dwFramingProtocol
Specifies the
framing protocol used by the server. PPP is the emerging standard. SLIP is used
mainly in UNIX environments. This member can be one of the following flags.
| Flag | Description | 
| RASFP_Ppp | Point-to-Point
  Protocol (PPP) | 
| RASFP_Slip | Serial Line
  Internet Protocol (SLIP) | 
| RASFP_Ras | Microsoft
  proprietary protocol implemented in Windows NT 3.1 and Windows for Workgroups
  3.11 | 
To use
Compressed SLIP, set the RASFP_Slip flag and set the RASEO_IpHeaderCompression
flag in the dwfOptions member.
szScript
Specifies a
null-terminated string containing the name of the script file. The filename
should be a full path. 
Windows
NT: To indicate a Windows NT
SWITCH.INF script name, set the first character of the name to  [ .
szAutodialDll
Specifies a
null-terminated string containing the full path and filename of the
dynamic-link library (DLL) for the customized AutoDial handler. If szAutodialDll
contains an empty string (  ), RAS uses
the default dialing user interface and the szAutodialFunc member is
ignored.
szAutodialFunc
Specifies a
null-terminated string containing the exported name of the RASADFunc function for the customized
AutoDial handler. An AutoDial DLL must provide both ANSI and Unicode versions
of the RASADFunc handler. However, do not include the  A  or  W  suffix in the
name specified by szAutodialFunc.
szDeviceType
Specifies a
null-terminated string indicating the RAS device type referenced by szDeviceName.
This member can be one of the following string constants.
| String | Description | 
| RASDT_Modem | A modem
  accessed through a COM port. | 
| RASDT_Isdn | An ISDN
  card with corresponding NDISWAN driver installed. | 
| RASDT_X25 | An X.25
  card with corresponding NDISWAN driver installed. | 
szDeviceName
Contains a
null-terminated string containing the name of a TAPI device to use with this
phone-book entry. To enumerate all available RAS-capable devices, use the RasEnumDevices function.
szX25PadType
Contains a
null-terminated string that identifies the X.25 PAD type. Set this member to    unless the entry should dial using an X.25 PAD. 
Windows
NT: Under Windows NT, the szX25PadType
string maps to a section name in PAD.INF.
szX25Address
Contains a
null-terminated string that identifies the X.25 address to connect to. Set this
member to    unless the entry should dial using an X.25 PAD or
native X.25 device.
szX25Facilities
Contains a
null-terminated string that specifies the facilities to request from the X.25
host at connection. This member is ignored if szX25Address is an empty
string (  ).
szX25UserData
Contains a
null-terminated string that specifies additional connection information
supplied to the X.25 host at connection. This member is ignored if szX25Address
is an empty string (  ).
dwChannels;
dwReserved1
Reserved;
must be zero.
dwReserved2
Reserved;
must be zero.
dwSubEntries
Specifies the
number of multilink subentries associated with this entry. When calling RasSetEntryProperties, set this member to zero.
To add subentries to a phone-book entry, use the RasSetSubEntryProperties function.
dwDialMode
Indicates
whether RAS should dial all of this entry s
multilink subentries when the entry is first connected. This member can be one
of the following values.
| Value | Meaning | 
| RASEDM_DialAll | Dial all
  subentries initially. | 
| RASEDM_DialAsNeeded | Adjust the
  number of subentries as bandwidth is needed. RAS uses the dwDialExtraPercent,
  dwDialExtraSampleSeconds, dwDialHangUpExtraPercent, and dwHangUpExtraSampleSeconds
  members to determine when to dial or disconnect a subentry. | 
dwDialExtraPercent
Specifies a
percent of the total bandwidth available from the currently connected
subentries. RAS dials an additional subentry when the total bandwidth used
exceeds dwDialExtraPercent percent of the available bandwidth for at
least dwDialExtraSampleSeconds seconds. 
This member
is ignored unless the dwDialMode member specifies the
RASEDM_DialAsNeeded flag.
dwDialExtraSampleSeconds
Specifies the
number of seconds that current bandwidth usage must exceed the threshold
specified by dwDialExtraPercent before RAS dials an additional subentry.
This member
is ignored unless the dwDialMode member specifies the
RASEDM_DialAsNeeded flag.
dwHangUpExtraPercent
Specifies a
percent of the total bandwidth available from the currently connected
subentries. RAS terminates (hangs up) an existing subentry connection when
total bandwidth used is less than dwHangUpExtraPercent percent of the
available bandwidth for at least dwHangUpExtraSampleSeconds seconds. 
This member
is ignored unless the dwDialMode member specifies the
RASEDM_DialAsNeeded flag.
dwHangUpExtraSampleSeconds
Specifies the
number of seconds that current bandwidth usage must be less than the threshold
specified by dwHangUpExtraPercent before RAS terminates an existing
subentry connection.
This member
is ignored unless the dwDialMode member specifies the RASEDM_DialAsNeeded
flag.
dwIdleDisconnectSeconds
Specifies the
number of seconds after which the connection is terminated due to inactivity.
Note that unless the idle timeout is disabled, the entire connection is
terminated if the connection is idle for the specified interval. This member
can specify a number of seconds, or one of the following values.
| Value | Meaning | 
| RASIDS_Disabled | There is no
  idle timeout for this connection.  | 
| RASIDS_UseGlobalValue | Use the
  user preference value as the default.  | 
See Also