Chapter Contents

Previous

Next
Using C for CICS Application Programs

SAS/C Considerations

This section discusses header files and library functions supported for SAS/C applications under CICS.


Header Files for SAS/C CICS Applications

Several header files are associated with a SAS/C CICS application. These header files are contained in SASC.MACLIBC under OS/390, and LC370 MACLIB under CMS. The following header files are included automatically by the translator:

cics.h
contains constants and declarations needed by the translator.

dib.h
maps the DL/I interface block.

eiblk.h
maps the execution interface block (EIB).

The following header files are also available for inclusion by the programmer:

dfhaid.h
provides the standard attention identifier definitions.

dfhbmsca.h
lists the standard attribute and printer control character definitions.

dfhcdblk.h
maps the conversation data areas for EXEC CICS GDS commands.

dfhmsrca.h
lists the magnetic slot reader control value constant definitions.

dfh2980.h
maps the CICS 2980 General Banking Terminal System constants.

dliuib.h
maps the DL/I user interface block (UIB).


Indep Compiler Option

SAS/C programs can be compiled freely with the indep compiler option. Use of this option causes the generation of code that can be called before the C framework is initialized, or code that can be used for interlanguage communication.

When the indep option is used, the L$UPREP provided by SAS/C stores the CRAB address in the first word of the Transaction Work Area (TWA) so that CICS application programs will be re-entrant; this is a CICS requirement. A transaction that invokes a C program compiled with the indep option must be defined with a TWA. See Appendix 6, "Using the indep Option for Interlanguage Communication," and Chapter 14, "Systems Programming with the SAS/C Compiler" in the SAS/C Compiler and Library User's Guide for more details.


SAS/C Library Functions

The majority of the functions in the SAS/C Library are supported. The following categories of functions are supported (any exceptions are noted):

The library functions in the following categories are not supported:

Functions Not Supported by CICS contains a complete listing of all functions that are not supported under CICS.

Functions Not Supported by CICS
Function Category Unsupported Function Names
Timing
clock
System Interface
getlogin
oslink
system
I/O
aopen
close
closedir
creat
ctermind
dup
dup2
_fcntl
fdopen
fsync
ftruncate
getdtablesize
kdelete
kgetpos
kinsert
kreplace
kretrv
ksearch
kseek
ktell
lseek
_lseek
open
_open
opendir
pclose
pipe
popen
read
_read
readdir
rewinddir
tmpfile
tmpname
ttyname
write
_write
Signal Handling
alarm
alarmd
ecbpause
kill
oesigsetup
pause
sigpause
sigsuspend

Note:    See Unsupported Functions under CICS for a list of the unsupported functions in the TCP/IP socket category.  [cautionend]


Chapter Contents

Previous

Next

Top of Page

Copyright © 2001 by SAS Institute Inc., Cary, NC, USA. All rights reserved.