(cid:1)(cid:2)(cid:3) TCP/IP for VSE/ESA TCP/IP for VSE/ESA – IBM Program Setup and Supplementary Information SC33-6601-05 (cid:1)(cid:2)(cid:3) TCP/IP for VSE/ESA TCP/IP for VSE/ESA – IBM Program Setup and Supplementary Information SC33-6601-05 Note! Beforeusingthisinformationandtheproductitsupports,besuretoreadthegeneralinformationunder“Notices”on pagexi. SixthEdition(December2001) ThiseditionappliestoVersion1Release4ofIBMTCP/IPforVSE/ESA,ProgramNumber5686-A04,andtoall subsequentreleasesandmodificationsuntilotherwiseindicatedinneweditions. OrderpublicationsthroughyourIBMrepresentativeortheIBMbranchofficeservingyourlocality.Publicationsare notstockedattheaddressesgivenbelow. Aformforreaders’commentsisprovidedatthebackofthispublication.Iftheformhasbeenremoved,address yourcommentsto: IBM Deutschland Entwicklung GmbH Department 3248 Schoenaicher Strasse 220 D-71032 Boeblingen Federal Republic of Germany YoumayalsosendyourcommentsbyFAXorviatheInternet: Internet: [email protected] FAX (Germany): 07031-16-3456 FAX (other countries): (+49)+7031-16-3456 WhenyousendinformationtoIBM,yougrantIBManon-exclusiverighttouseordistributetheinformationinany wayitbelievesappropriatewithoutincurringanyobligationtoyou. ©CopyrightInternationalBusinessMachinesCorporation1997,2001.Allrightsreserved. USGovernmentUsersRestrictedRights–Use,duplicationordisclosurerestrictedbyGSAADPScheduleContract withIBMCorp. Contents Figures . . . . . . . . . . . . . . vii RegisterSettingsforPreprocessingExit . . . . 36 RegisterSettingsforPostprocessingExit. . . . 36 Tables . . . . . . . . . . . . . . . ix PerformanceHints . . . . . . . . . . . . 37 ExternalSecurityManagers . . . . . . . . . 37 Notices. . . . . . . . . . . . . . . xi Chapter 5. Performance Considerations 39 TrademarksandServiceMarks . . . . . . . . xi PerformanceandTuningConsiderations. . . . . 39 UnderstandingSyntaxDiagrams . . . . . . . xii ChangingPerformanceParameters . . . . . 39 GeneralPerformanceIssues . . . . . . . . 40 Summary of Changes . . . . . . . . xv PrincipalPerformanceDependenciesforTCP/IP forVSE/ESA. . . . . . . . . . . . . 40 Part 1. Using TCP/IP for VSE/ESA . . 1 Part 2. Programming Interfaces. . . 43 Chapter 1. Important Considerations - Read this First! . . . . . . . . . . . 3 Chapter 6. Introducing Socket DocumentationfortheTCP/IPforVSE/ESA Programming . . . . . . . . . . . . 45 (5686-A04)Program . . . . . . . . . . . . 3 WhatisaTCP/IPSocketConnection? . . . . . 45 GeneralConsiderationsontheTCP/IPforVSE/ESA SocketApplicationProgrammingInterfaces ProgramSetup. . . . . . . . . . . . . . 3 AvailablewithTCP/IPforVSE/ESA. . . . . . 46 TheDemoModeforTCP/IPforVSE/ESA . . . . 4 PortabilityAspects . . . . . . . . . . . . 47 SupplyingtheProductKey . . . . . . . . . 5 Assembler. . . . . . . . . . . . . . 47 InstallingProductKeys. . . . . . . . . . 6 COBOLandPL/I . . . . . . . . . . . 47 DefiningCustomerInformation . . . . . . . 6 CLanguage . . . . . . . . . . . . . 47 MigrationConsiderations . . . . . . . . . . 8 LanguageEnvironment . . . . . . . . . 47 WhichAPItouse?. . . . . . . . . . . . 48 Chapter 2. TCP/IP for VSE/ESA Assembler. . . . . . . . . . . . . . 49 Configuration . . . . . . . . . . . . 11 COBOLandPL/I . . . . . . . . . . . 49 HowTCP/IPforVSE/ESAisInstalled . . . . . 11 CLanguage . . . . . . . . . . . . . 49 TCP/IPforVSE/ESAPartitionStartup . . . . . 11 ExploitingtheLE/VSESocketAPI. . . . . . . 51 Example . . . . . . . . . . . . . . 11 CLanguage . . . . . . . . . . . . . 51 ConfiguringCICS . . . . . . . . . . . . 13 AssemblerLanguage . . . . . . . . . . 52 SetupCICS . . . . . . . . . . . . . 13 PL/I. . . . . . . . . . . . . . . . 53 ICAToken-Ring–SharingConsiderationswith COBOL. . . . . . . . . . . . . . . 54 VTAM . . . . . . . . . . . . . . . . 20 ExploitingtheEZASMI/EZASOKETProgramming HTMLINST.Z. . . . . . . . . . . . . . 21 Interfaces . . . . . . . . . . . . . . . 61 Example . . . . . . . . . . . . . . 21 LE/VSE1.4CSocketProgramming . . . . . . 73 GeneralCProgrammingConsiderations. . . . 73 Chapter 3. TCP/IP for VSE/ESA LE/VSESocketsversusTCP/IPforVSE/ESA Sockets-ReferenceList . . . . . . . . . 75 Configuration Dialogs . . . . . . . . 23 Messages . . . . . . . . . . . . . . 78 ConfiguringTCP/IPUsingtheConfiguration OS/390EZASMIandEZASOKETCallsSupported Dialogs. . . . . . . . . . . . . . . . 23 byVSE/ESA . . . . . . . . . . . . . . 79 HowToDoIt . . . . . . . . . . . . 23 ERRNOValues . . . . . . . . . . . . . 81 TCP/IPforVSE/ESAPC-BasedConfiguration CICSConsiderations . . . . . . . . . . . 85 Dialog . . . . . . . . . . . . . . . 24 ExecutingTCP/IPApplicationPrograms . . . . 86 ConfiguringTCP/IPUsingtheIUI-Based ConnectingToTCP/IP . . . . . . . . . 86 ConfigurationDialog . . . . . . . . . . 27 PreparationandSetupforSSL . . . . . . . 86 Chapter 4. Security Manager Chapter 7. TCP/IP Support for the Exploitation by TCP/IP for VSE/ESA . . 33 LE/VSE C Socket Interface . . . . . . 87 UsingBSMCapabilitiesforTCP/IPSecurityChecks 33 Overview . . . . . . . . . . . . . . . 87 ActivationofTheSecurityExit . . . . . . . . 34 TCP/IPCallableFunctions—FunctionDescriptions 88 DeactivationoftheSecurityExit . . . . . . . 35 accept()—AcceptaNewConnectiononaSocket 88 UsingPre-andPostprocessingExits . . . . . . 36 © Copyright IBM Corp. 1997, 2001 iii aio_cancel()—CancelanAsynchronousI/O inet_network()—GettheNetworkNumber Request. . . . . . . . . . . . . . . 90 fromtheDecimalHostAddress . . . . . . 152 aio_error()—RetrieveErrorStatusforan inet_ntoa()—GettheDecimalInternetHost AsynchronousI/OOperation . . . . . . . 92 Address . . . . . . . . . . . . . . 153 aio_read()—AsynchronousReadfromaSocket 93 ioctl()—ControlSocket. . . . . . . . . 154 aio_return()—RetrieveStatusforan listen()—PreparetheServerforIncoming AsynchronousI/OOperation . . . . . . . 96 ClientRequests. . . . . . . . . . . . 155 aio_suspend()—WaitforanAsynchronousI/O ntohl()—TranslateaLongIntegerintoHost Request. . . . . . . . . . . . . . . 97 ByteOrder . . . . . . . . . . . . . 156 aio_write()—AsynchronousWritetoaSocket. . 99 ntohs()—TranslateanUnsignedShortInteger bind()—BindaNametoaSocket . . . . . 102 intoHostByteOrder. . . . . . . . . . 157 close()—CloseaSocket. . . . . . . . . 105 read()—ReadFromaSocket . . . . . . . 158 connect()—ConnectaSocket. . . . . . . 106 recv()—ReceiveDataonaSocket . . . . . 160 fcntl()—ControlOpenSocketDescriptors . . 109 recvfrom()—ReceiveMessagesonaSocket . . 162 getclientid()—GettheIdentifierfortheCalling select()—MonitorActivityonSockets . . . . 164 Application . . . . . . . . . . . . . 111 selectex()—MonitorActivityonSockets . . . 168 gethostbyaddr()—GetaHostEntrybyAddress 113 send()—SendDataonaSocket . . . . . . 170 gethostbyname()—GetaHostEntrybyName 115 sendto()—SendDataonaSocket . . . . . 172 gethostid()—GettheUniqueIdentifierofthe setsockopt()—SetOptionsAssociatedwitha CurrentHost . . . . . . . . . . . . 117 Socket. . . . . . . . . . . . . . . 174 gethostname()—GettheNameoftheHost shutdown()—ShutDownaConnection . . . 177 Processor. . . . . . . . . . . . . . 118 socket()—CreateaSocket . . . . . . . . 178 getpeername()—GettheNameofthePeer takesocket()—AcquireaSocketfromAnother ConnectedtoaSocket . . . . . . . . . 119 Program . . . . . . . . . . . . . . 181 getsockname()—GettheNameofaSocket . . 120 write()—WriteDataonaSocket. . . . . . 182 getsockopt()—GettheOptionsAssociatedwith aSocket . . . . . . . . . . . . . . 121 Chapter 8. Using the CALL Instruction givesocket()—MaketheSpecifiedSocket Application Programming Interface Available. . . . . . . . . . . . . . 124 (EZASOKET API) . . . . . . . . . . 185 gsk_free_memory()—Freememoryallocated EnvironmentalRestrictionsandProgramming forSSL . . . . . . . . . . . . . . 127 Requirements . . . . . . . . . . . . . 185 gsk_get_cipher_info()—QueryCipherRelated CALLInstructionApplicationProgramming Information . . . . . . . . . . . . . 128 Interface(API) . . . . . . . . . . . . . 185 gsk_get_dn_by_label()—GetDistinguished UnderstandingCOBOL,Assembler,andPL/ICall NameBasedontheLabel . . . . . . . . 130 Formats . . . . . . . . . . . . . . . 186 gsk_initialize()—InitializetheSSLEnvironment 131 COBOLLanguageCallFormat . . . . . . 186 gsk_secure_soc_close()—CloseaSecureSocket AssemblerLanguageCallFormat . . . . . 186 Connection . . . . . . . . . . . . . 133 PL/ILanguageCallFormat . . . . . . . 186 gsk_secure_soc_init()—InitializeDataAreasfor ConvertingParameterDescriptions . . . . . . 187 aSecureSocketConnection. . . . . . . . 134 ErrorMessagesandReturnCodes . . . . . . 187 gsk_secure_soc_read()—ReceiveDataona Debugging . . . . . . . . . . . . . . 187 SecureSocketConnection . . . . . . . . 138 CodeCALLInstructions. . . . . . . . . . 188 gsk_secure_soc_reset()—RefreshtheSecurity ACCEPT . . . . . . . . . . . . . . 188 Parameters . . . . . . . . . . . . . 140 BIND . . . . . . . . . . . . . . . 190 gsk_secure_soc_write()—SendDataona CLOSE . . . . . . . . . . . . . . 192 SecureSocketConnection . . . . . . . . 141 CONNECT . . . . . . . . . . . . . 194 gsk_uninitialize()—RemoveCurrentSettings FCNTL . . . . . . . . . . . . . . 196 fortheSSLEnvironment . . . . . . . . 143 GETCLIENTID. . . . . . . . . . . . 198 gsk_user_set()—ProvideCallbackRoutines . . 144 GETHOSTBYADDR . . . . . . . . . . 200 htonl()—TranslateAddressHosttoNetwork GETHOSTBYNAME . . . . . . . . . . 202 Long . . . . . . . . . . . . . . . 145 GETHOSTID . . . . . . . . . . . . 204 htons()—TranslateanUnsignedShortInteger GETHOSTNAME . . . . . . . . . . . 205 intoNetworkByteOrder . . . . . . . . 146 GETPEERNAME . . . . . . . . . . . 206 inet_addr()—TranslateanInternetAddressinto GETSOCKNAME . . . . . . . . . . . 208 NetworkByteOrder . . . . . . . . . . 147 GETSOCKOPT . . . . . . . . . . . . 210 inet_lnaof()—TranslateaLocalNetwork GIVESOCKET . . . . . . . . . . . . 212 AddressintoHostByteOrder. . . . . . . 149 GSKFREEMEM. . . . . . . . . . . . 214 inet_makeaddr()—CreateanInternetHost GSKGETCIPHINF. . . . . . . . . . . 215 Address . . . . . . . . . . . . . . 150 GSKGETDNBYLAB . . . . . . . . . . 217 inet_netof()—GettheNetworkNumberfrom GSKINIT. . . . . . . . . . . . . . 218 theInternetHostAddress . . . . . . . . 151 iv TCP/IPforVSE/ESAV1R4IBMProgramSetupandSupplementaryInformation GSKSSOCCLOSE . . . . . . . . . . . 220 GSKGETDNBYLAB . . . . . . . . . . 307 GSKSSOCINIT . . . . . . . . . . . . 221 GSKINIT. . . . . . . . . . . . . . 308 GSKSSOCREAD . . . . . . . . . . . 224 GSKSSOCCLOSE . . . . . . . . . . . 310 GSKSSOCRESET . . . . . . . . . . . 225 GSKSSOCINIT . . . . . . . . . . . . 311 GSKSSOCWRITE . . . . . . . . . . . 226 GSKSSOCREAD . . . . . . . . . . . 316 GSKUNINIT. . . . . . . . . . . . . 227 GSKSSOCRESET . . . . . . . . . . . 317 INITAPI . . . . . . . . . . . . . . 228 GSKSSOCWRITE . . . . . . . . . . . 318 IOCTL. . . . . . . . . . . . . . . 230 GSKUNINIT. . . . . . . . . . . . . 319 LISTEN . . . . . . . . . . . . . . 232 INITAPI . . . . . . . . . . . . . . 320 READ. . . . . . . . . . . . . . . 233 IOCTL. . . . . . . . . . . . . . . 323 RECV . . . . . . . . . . . . . . . 235 LISTEN . . . . . . . . . . . . . . 325 RECVFROM. . . . . . . . . . . . . 237 READ. . . . . . . . . . . . . . . 327 SELECT . . . . . . . . . . . . . . 239 RECV . . . . . . . . . . . . . . . 329 SELECTEX . . . . . . . . . . . . . 244 RECVFROM. . . . . . . . . . . . . 331 SEND . . . . . . . . . . . . . . . 247 SELECT . . . . . . . . . . . . . . 333 SENDTO. . . . . . . . . . . . . . 249 SELECTEX . . . . . . . . . . . . . 338 SETSOCKOPT . . . . . . . . . . . . 251 SEND . . . . . . . . . . . . . . . 341 SHUTDOWN . . . . . . . . . . . . 253 SENDTO. . . . . . . . . . . . . . 343 SOCKET . . . . . . . . . . . . . . 255 SETSOCKOPT . . . . . . . . . . . . 345 TAKESOCKET . . . . . . . . . . . . 257 SHUTDOWN . . . . . . . . . . . . 348 TERMAPI . . . . . . . . . . . . . 259 SOCKET . . . . . . . . . . . . . . 350 WRITE . . . . . . . . . . . . . . 260 TAKESOCKET . . . . . . . . . . . . 353 UsingDataTranslationProgramsforSocketCall TASK . . . . . . . . . . . . . . . 355 Interface . . . . . . . . . . . . . . . 262 TERMAPI . . . . . . . . . . . . . 356 DataTranslation . . . . . . . . . . . 262 WRITE . . . . . . . . . . . . . . 357 BitStringProcessing . . . . . . . . . . 262 Part 3. CICS Listener Support . . . 359 Chapter 9. Using the Macro Application Programming Interface Chapter 10. Setting Up and (EZASMI API) . . . . . . . . . . . 271 Configuring CICS Listener Support . . 361 EnvironmentalRestrictionsandProgramming Overview. . . . . . . . . . . . . . . 361 Requirements . . . . . . . . . . . . . 271 CICS—DefiningCICSResources . . . . . . 361 EZASMIMacroApplicationProgramming TransactionDefinitions . . . . . . . . . 361 Interface(API) . . . . . . . . . . . . . 271 ProgramDefinitions . . . . . . . . . . 362 DefiningStoragefortheAPIMacro . . . . . . 272 FileDefinitions. . . . . . . . . . . . 363 UnderstandingCommonParameterDescriptions 273 TransientDataDefinition . . . . . . . . 363 CharacteristicsofStreamSockets. . . . . . . 273 CICSMonitoring . . . . . . . . . . . 363 TaskManagementandAsynchronousFunction CICSProgramListTable(PLT) . . . . . . 365 Processing . . . . . . . . . . . . . . 274 ConfiguringtheCICSTCP/IPEnvironment . . . 365 HowItWorks . . . . . . . . . . . . 274 BuildingtheConfigurationDatasetwith ErrorMessagesandReturnCodes . . . . . . 275 EZACICD . . . . . . . . . . . . . 365 Debugging . . . . . . . . . . . . . . 275 CustomizingtheConfigurationDataset. . . . 369 MacrosforAssemblerPrograms . . . . . . . 276 ACCEPT . . . . . . . . . . . . . . 276 Chapter 11. Configuring the CICS BIND . . . . . . . . . . . . . . . 278 Domain Name Server Cache . . . . . 385 CANCEL. . . . . . . . . . . . . . 280 CLOSE . . . . . . . . . . . . . . 281 OverviewoftheDomainNameServerCache . . 385 CONNECT . . . . . . . . . . . . . 283 FunctionComponents . . . . . . . . . 385 FCNTL . . . . . . . . . . . . . . 285 HowtheDNSCacheHandlesRequests . . . 386 GETCLIENTID. . . . . . . . . . . . 287 UsingtheDNSCache . . . . . . . . . . 386 GETHOSTBYADDR . . . . . . . . . . 289 Step1:CreatetheInitializationModule. . . . 387 GETHOSTBYNAME . . . . . . . . . . 291 Step2:DefinetheCacheFiletoCICS . . . . 389 GETHOSTID . . . . . . . . . . . . 293 Step3:ExecuteEZACIC25 . . . . . . . . 389 GETHOSTNAME . . . . . . . . . . . 294 GETPEERNAME . . . . . . . . . . . 296 Chapter 12. Starting and Stopping the GETSOCKNAME . . . . . . . . . . . 298 CICS Listener Support . . . . . . . 391 GETSOCKOPT . . . . . . . . . . . . 300 Overview. . . . . . . . . . . . . . . 391 GIVESOCKET . . . . . . . . . . . . 303 Starting/StoppingCICSListenerSupport GSKFREEMEM. . . . . . . . . . . . 305 Automatically . . . . . . . . . . . . . 391 GSKGETCIPHINF. . . . . . . . . . . 306 Starting/StoppingCICSManually . . . . . . 391 Contents v STARTFunction . . . . . . . . . . . 392 Appendix A. TCP/IP for VSE/ESA STOPFunction. . . . . . . . . . . . 394 (5686-A04) History . . . . . . . . . 427 Starting/StoppingCICSListenerSupportwith ProgramLink . . . . . . . . . . . . . 396 Appendix B. Examples . . . . . . . 431 AutonomousFTP . . . . . . . . . . . . 431 Chapter 13. Writing Your Own Listener 399 Overview. . . . . . . . . . . . . . 431 BasicRequirements . . . . . . . . . . . 399 Example . . . . . . . . . . . . . . 431 Pre-Requisites . . . . . . . . . . . . . 399 AUTOLPR–PrintingwiththeCICSReport UsingIBM’sEnvironmentalSupport . . . . . 399 ControllerFeature(RCF) . . . . . . . . . 433 SpecificationintheCICSRCFProgram. . . . 433 Chapter 14. External Data Structures 405 TCP/IPDefinitions . . . . . . . . . . 433 ExternalDataStructures. . . . . . . . . . 405 ScriptFileDefinition . . . . . . . . . . 434 ConfigurationDataSetRecordFormats . . . 405 GPSandRCF . . . . . . . . . . . . . 435 GlobalWorkArea. . . . . . . . . . . 406 Overview. . . . . . . . . . . . . . 435 ParameterList(COMMAREA)forEZACIC20 408 DefiningtoVTAM. . . . . . . . . . . 435 ListenerControlArea(LCA) . . . . . . . . 409 DefiningtoCICS . . . . . . . . . . . 435 DefiningtoTCP/IP . . . . . . . . . . 435 Chapter 15. CICS Listener DefiningtoRCF . . . . . . . . . . . 435 Programming Considerations . . . . 411 TELNETandSubnettinginaClass-CNetwork . . 436 VSAMCATUsage . . . . . . . . . . . . 437 Overview. . . . . . . . . . . . . . . 411 Step1:DefiningthecatalogtoVSE . . . . . 437 WritingCICSTCP/IPApplications . . . . . . 411 Step2:DefiningthecatalogtoTCP/IP. . . . 437 1.TheClient-Listener-Child-ServerApplication Step3:Usingthecatalog . . . . . . . . 437 Set . . . . . . . . . . . . . . . . 412 UsingtheCommandPre-Processor . . . . . . 439 2.WritingYourOwnConcurrentServer . . . 414 Overview. . . . . . . . . . . . . . 439 3.TheIterativeServerCICSTCP/IPApplication 415 SamplePrograms . . . . . . . . . . . 439 4.TheClientCICSTCP/IPApplication. . . . 416 CompilingYourProgram . . . . . . . . 444 SocketAddresses . . . . . . . . . . . . 417 AddressFamily(Domain) . . . . . . . . 417 Appendix C. Debugging Facility for IPAddresses . . . . . . . . . . . . 417 Ports . . . . . . . . . . . . . . . 417 EZASMI and EZASOKET Interfaces AddressStructures . . . . . . . . . . 417 (EZAAPI Trace). . . . . . . . . . . 449 NetworkByteOrder . . . . . . . . . . 418 RequirementsforUsage. . . . . . . . . . 449 GETCLIENTID,GIVESOCKET,andTAKESOCKET 418 Setup . . . . . . . . . . . . . . . . 449 TheListener. . . . . . . . . . . . . . 420 Output . . . . . . . . . . . . . . . 450 ListenerInputFormat . . . . . . . . . 420 ListenerOutputFormat . . . . . . . . . 421 Index . . . . . . . . . . . . . . . 451 WritingYourOwnSecurityLinkModuleforthe Listener . . . . . . . . . . . . . . 422 DataConversionRoutines . . . . . . . . . 423 Part 4. Appendixes . . . . . . . . 425 vi TCP/IPforVSE/ESAV1R4IBMProgramSetupandSupplementaryInformation Figures 1. DFHPPTIP—CICSProcessingProgramTable 14 47. GSKSSOCWRITECallInstructionExample 226 2. DFHPCTIP—CICSTransactionTable. . . . 15 48. GSKUNINITCallInstructionExample 227 3. IPNCSD.ZshipppedwithTCP/IPfor 49. INITAPICallInstructionExample. . . . . 228 VSE/ESA . . . . . . . . . . . . . 18 50. IOCTLCallInstructionExample . . . . . 230 4. TCP/IPforVSE/ESAConfigurationDialog 26 51. LISTENCallInstructionExample. . . . . 232 5. TCP/IPConfigurationPanelCON$SEL 27 52. READCallInstructionExample . . . . . 233 6. TCP/IPConfigurationPanel:SetIPADDRand 53. RECVCallInstructionExample . . . . . 235 MASK . . . . . . . . . . . . . . 28 54. RECVFROMCallInstructionExample 237 7. TCP/IPConfigurationPanel:LinkList . . . 28 55. SELECTCallInstructionExample. . . . . 241 8. TCP/IPConfigurationPanel:Link . . . . . 29 56. SELECTEXCallInstructionExample 244 9. TCP/IPConfigurationPanel:AdapterList 29 57. SENDCallInstructionExample . . . . . 247 10. TCP/IPConfigurationPanel:Adapter. . . . 30 58. SENDTOCallInstructionExample . . . . 249 11. TCP/IPConfigurationPanel:RouteList 30 59. SETSOCKOPTCallInstructionExample 251 12. TCP/IPConfigurationPanel:DefineRoute 31 60. SHUTDOWNCallInstructionExample 253 13. TCP/IPConfigurationPanel:TELNETLIST 31 61. SOCKETCallInstructionExample . . . . 255 14. TCP/IPConfigurationPanel:TELNET 62. TAKESOCKETCallInstructionExample 257 DAEMON . . . . . . . . . . . . . 32 63. TERMAPICallInstructionExample . . . . 259 15. ControlFlowwhenusingTCP/IPfor 64. WRITECallInstructionExample . . . . . 260 VSE/ESABSD-CSockets . . . . . . . . 50 65. EZACIC04CallInstructionExample. . . . 263 16. ControlFlowwhenusingLE/VSECSockets 51 66. EZACIC05CallInstructionExample. . . . 264 17. COBOLProgramcallingLECsocketroutines 56 67. EZACIC06CallInstructionExample. . . . 265 18. LE/VSECsocketinterfaceroutinesfor 68. EZAZIC08CallInstructionExample . . . . 268 COBOL. . . . . . . . . . . . . . 59 69. ECBInputParameter . . . . . . . . . 274 19. SampleProgramUsingEZASMIMacro 70. HOSTENTStructureReturnedbythe (Synchronously) . . . . . . . . . . . 61 GETHOSTBYADDRMacro . . . . . . . 290 20. SampleProgramUsingEZASMIMacro 71. HOSTENTStructureReturnedbythe (Asynchronously) . . . . . . . . . . 65 GETHOSTBYNAMEMacro. . . . . . . 292 21. SampleProgramUsingEZASOKETCallUsing 72. AdditiontotheDCTRequiredbyCICS COBOL. . . . . . . . . . . . . . 70 TCP/IP . . . . . . . . . . . . . 363 22. StorageDefinitionStatementExamples 187 73. TheMonitorControlTable(MCT)forListener 364 23. ACCEPTCallInstructionsExample . . . . 188 74. EZACInitialScreen . . . . . . . . . 370 24. BINDCallInstructionExample . . . . . 190 75. EZACALTERScreen . . . . . . . . . 371 25. CLOSECallInstructionExample . . . . . 192 76. EZACALTERCICSscreen . . . . . . . 371 26. CONNECTCallInstructionExample 194 77. EZACALTERCICSDetailScreen. . . . . 372 27. FCNTLCallInstructionExample . . . . . 196 78. ALTERLISTENERscreen . . . . . . . 372 28. GETCLIENTIDCallInstructionExample 198 79. EZACALTERLISTENERDetailScreen 373 29. GETHOSTBYADDRCallInstructionExample 200 80. EZACCOPYScreen . . . . . . . . . 373 30. HOSTENTStructureReturnedbythe 81. EZACCOPYScreen . . . . . . . . . 374 GETHOSTBYADDRCall. . . . . . . . 201 82. EZACCOPYScreen . . . . . . . . . 375 31. GETHOSTBYNAMECallInstructionExample 202 83. EZACDEFINEScreen . . . . . . . . 375 32. HOSTENTStructureReturnedbythe 84. EZACDEFINECICSscreen. . . . . . . 376 GETHOSTYBYNAMECall . . . . . . . 203 85. EZACDEFINECICSDetailScreen . . . . 376 33. GETHOSTIDCallInstructionExample 204 86. EZACDEFINELISTENERscreen. . . . . 377 34. GETHOSTNAMECallInstructionExample 205 87. EZACDEFINELISTENERDetailScreen 377 35. GETPEERNAMECallInstructionExample 206 88. EZACDELETEScreen . . . . . . . . 378 36. GETSOCKNAMECallInstructionExample 208 89. EZACDELETECICSscreen . . . . . . 378 37. GETSOCKOPTCallInstructionExample 210 90. EZACDELETELISTENERscreen. . . . . 379 38. GIVESOCKETCallInstructionExample 212 91. EZACDISPLAYScreen . . . . . . . . 380 39. GSKFREEMEMCallInstructionExample 214 92. EZACDISPLAYCICSscreen . . . . . . 380 40. GSKGETCIPHINFCallInstructionExample 215 93. EZACDISPLAYCICSDetailScreen . . . . 381 41. GSKGETDNBYLABCallInstructionExample 217 94. EZACDISPLAYLISTENERscreen . . . . 381 42. GSKINITCallInstructionExample . . . . 218 95. EZACDISPLAYLISTENERDetailScreen 382 43. GSKSSOCCLOSECallInstructionExample 220 96. EZACRENAMEScreen . . . . . . . . 382 44. GSKSSOCINITCallInstructionExample 221 97. EZACRENAMECICSScreen . . . . . . 383 45. GSKSSOCREADCallInstructionExample 224 98. EZACRENAMELISTENERScreen . . . . 384 46. GSKSSOCRESETCallInstructionExample 225 99. TheDNSHostent . . . . . . . . . . 390 © Copyright IBM Corp. 1997, 2001 vii 100. EZAOInitialScreen . . . . . . . . . 392 109. TheSequenceofSocketsCalls . . . . . . 412 101. EZAOSTARTScreen . . . . . . . . . 393 110. SequenceofSocketCallswithanIterative 102. EZAOSTARTCICSResponseScreen 393 Server . . . . . . . . . . . . . . 415 103. EZAOSTARTLISTENERScreen . . . . . 394 111. SequenceofSocketCallsbetweenaCICS 104. EZAOSTARTLISTENERResultScreen 394 ClientandaRemoteIterativeServer. . . . 416 105. EZAOSTOPScreen . . . . . . . . . 395 112. TransferofCLIENTIDInformation . . . . 419 106. EZAOSTOPCICSScreen . . . . . . . 395 113. COBOLExample . . . . . . . . . . 440 107. EZAOSTOPLISTENERScreen . . . . . 396 114. PL/IExample . . . . . . . . . . . 443 108. SampleFrameforUserWrittenListener 400 viii TCP/IPforVSE/ESAV1R4IBMProgramSetupandSupplementaryInformation
Description: