spinhawk is the repository for the production-quality version (release 3.xx) of the Hercules mainframe virtualization platform
C HTML Shell M4 C++ Makefile Other
Latest commit 83e216f Jul 29, 2016 @ivan-w ivan-w committed with Force a TLB/ALB purge on a cached guest regs upon SIE entry
The rationale is as follows:

- Some TLB maintenance instructions are not properly maintaining the cached guest regs TLB entries
- The current code assumes a SIEBK/SIEBK2 with an identical address means the same VM is being dispatched.

Note : this is a temporary measure until all TLB/ALB clearing (explicit or implied) instruction also clears any potential cached guest regs for SIE.

--Ivan
Permalink
Failed to load latest commit information.
autoconf Fix libtool configuration for linux x86_64 Oct 4, 2014
crypto Defects in PCC and KM instructions May 6, 2016
decNumber Eliminate some compiler warnings for gcc x86_64 Apr 5, 2009
html Update Herculeans list in FAQ Apr 2, 2016
m4 The big move: moving MSVC (mingw_port) branch to the trunk. Cross your Sep 24, 2005
makemsi Revert to zlib 1.2.5 for Windows build Nov 21, 2015
man add manual page for hercules Jun 1, 2013
msvc.makefile.includes Add support for Microsoft VS2015 Mar 14, 2016
softfloat CDLGBR,CELFBR correction for large unsigned values Aug 10, 2014
tests Add SERVC testcase Nov 19, 2015
util Support for CCKD datasets larger than 64k tracks Nov 23, 2014
.gitignore Merge branch 'softfloat' Dec 30, 2013
COPYRIGHT Update link to herclic.html Dec 20, 2005
INSTALL Correct directory name in INSTALL file Dec 20, 2015
Makefile.am Merge README.SVN information into INSTALL Jan 5, 2014
README.COMMADPT See CHANGES entry dated 16 Aug 2003 Aug 17, 2003
README.DYNMOD Changes for easier building of external dynamic modules Feb 9, 2010
README.ECPSVM Update to ECPS:VM notes Feb 2, 2006
README.HDL Dynamically add instructions May 30, 2012
README.HERCLOGO Allow $(LPARNAME) in herclogo file Dec 30, 2008
README.NETWORKING CTCE device added supporting Enhanced CTC emulation May 29, 2014
README.OSX Corrected --host values and added a note about the vendor value in th… Jan 8, 2009
README.SETUID Added README file for thoughts about running hercules setuid 0 Feb 19, 2008
README.SUN Remove --enable-nls, gettext, libintl, and /po Dec 27, 2012
README.TAPE Misleading VTAPE support renamed to AUTOMOUNT instead and fixed and e… May 28, 2008
README.WIN32 Include information about VS2010 SP1 in README.WIN32/64 Jun 7, 2012
README.WIN64 Include information about VS2010 SP1 in README.WIN32/64 Jun 7, 2012
RELEASE.NOTES cvslvlck renamed to bldlvlck (README.CVS also renamed to README.SVN) Sep 13, 2012
_build Fix Keyboard processing for pseudo-graphical console (by Marian Gaspa… Dec 19, 2003
_build.bat The big move: moving MSVC (mingw_port) branch to the trunk. Cross your Sep 24, 2005
_build.tail Add CVS message log Dec 8, 2006
assist.c Standard preamble (modules A-E) Dec 27, 2012
autogen.sh Standard preamble (modules A-E) Dec 27, 2012
awstape.c Standard preamble (modules A-E) Dec 27, 2012
bldcfg.c Add support for $(VERSION) in hercules.cnf Mar 14, 2016
bootstrap.c Standard preamble (modules A-E) Dec 27, 2012
build_pch.c Standard preamble (modules A-E) Dec 27, 2012
cache.c Standard preamble (modules A-E) Dec 27, 2012
cache.h Standard preamble (modules A-E) Dec 27, 2012
cardpch.c Standard preamble (modules A-E) Dec 27, 2012
cardrdr.c Standard preamble (modules A-E) Dec 27, 2012
cckdcdsk.c Standard preamble (modules A-E) Dec 27, 2012
cckdcomp.c Standard preamble (modules A-E) Dec 27, 2012
cckddasd.c Eliminate warning: format specifies type long Mar 17, 2014
cckddiag.c Standard preamble (modules A-E) Dec 27, 2012
cckdfix.c Standard preamble (modules A-E) Dec 27, 2012
cckdswap.c Standard preamble (modules A-E) Dec 27, 2012
cckdutil.c Standard preamble (modules A-E) Dec 27, 2012
cgibin.c Use HTML5 to give web UI command input focus after refrsh Dec 15, 2015
channel.c Halt Device -- wrong condition code Aug 17, 2015
chsc.c Standard preamble (modules A-E) Dec 27, 2012
chsc.h Standard preamble (modules A-E) Dec 27, 2012
ckddasd.c Fix 3990-3 CKD CU command reject for 0x4B LRE CCW Apr 2, 2013
clock.c Standard preamble (modules A-E) Dec 27, 2012
clock.h Standard preamble (modules A-E) Dec 27, 2012
cmdtab.c Standard preamble (modules A-E) Dec 27, 2012
cmdtab.h Standard preamble (modules A-E) Dec 27, 2012
cmpsc.c Copyright year adjustment Nov 11, 2015
codepage.c Standard preamble (modules A-E) Dec 27, 2012
codepage.h Standard preamble (modules A-E) Dec 27, 2012
comm3705.c comm3705_RU-size+unack_attn_delay patch Apr 7, 2015
comm3705.h comm3705_RU-size+unack_attn_delay patch Apr 7, 2015
commadpt.c APL\360 2741 patch for commadpt.c Jan 3, 2013
commadpt.h APL\360 2741 patch for commadpt.c Jan 3, 2013
con1052c.c Standard preamble (modules A-E) Dec 27, 2012
config.c Standard preamble (modules A-E) Dec 27, 2012
config.sh Configure error when using config.sh with BSD wc Feb 11, 2014
configure.ac Update release number to 3.12 Nov 11, 2015
console.c Eliminate warning: len may be used uninitialized Sep 14, 2014
conspawn.c Standard preamble (modules A-E) Dec 27, 2012
control.c Fix disabled wait during IPL for SUSE SLES 12 under VM Mar 14, 2016
cpu.c Restore regressed code from 20081205 affecting ia update in sie Nov 18, 2013
cpuint.h Standard preamble (modules A-E) Dec 27, 2012
crypto.c Standard preamble (modules A-E) Dec 27, 2012
crypto.h Standard preamble (modules A-E) Dec 27, 2012
ctc_ctci.c Replace purposeful long delay by break in CTC read Jul 29, 2014
ctc_lcs.c Relocate a free stmt prior to the ending the loop Mar 14, 2016
ctcadpt.c Eliminate warning: use of logical '||' with constant operand Apr 4, 2016
ctcadpt.h Standard preamble (modules A-E) Dec 27, 2012
dasdblks.h Correct definition of DIRF bit and revert dasdload to set DOS bit Dec 20, 2015
dasdcat.c Standard preamble (modules A-E) Dec 27, 2012
dasdconv.c Eliminate warning: variable is used uninitialized Mar 13, 2014
dasdcopy.c Allow dasdcopy to create CCKD minidisks May 15, 2015
dasdinit.c Standard preamble (modules A-E) Dec 27, 2012
dasdisup.c setting memtab[n].multixt explicit to 0 in dasdisup.c (#47) Apr 30, 2016
dasdload.c Correct definition of DIRF bit and revert dasdload to set DOS bit Dec 20, 2015
dasdls.c Eliminate warning: data argument not used by format string Mar 16, 2014
dasdpdsu.c Standard preamble (modules A-E) Dec 27, 2012
dasdseq.c Correct calculation of extent descriptor array size Mar 25, 2014
dasdtab.c Prevent duplicate EQID May 9, 2013
dasdtab.h Fix VSAM Extended Format Dataset issue Apr 2, 2013
dasdutil.c Improve OS DSNAME validation. Valid characters are A-Z, 0-9, #, $, @,… Aug 1, 2013
dat.c Standard preamble (modules A-E) Dec 27, 2012
dat.h authorize_asn may use wrong ATO address after SIE translation Jun 16, 2015
decimal.c Add support for Microsoft VS2015 Mar 14, 2016
devtype.h CTCE device added supporting Enhanced CTC emulation May 29, 2014
dfp.c SRDT,SRXT correction Mar 13, 2014
diagmssf.c Set realcpu field in DIAG204 extended partition info Oct 21, 2013
diagnose.c Standard preamble (modules A-E) Dec 27, 2012
dmap2hrc.c Standard preamble (modules A-E) Dec 27, 2012
dyngui.c Report percent utilization for each processor Jul 14, 2014
dyninst.c Eliminate warning: unused function copy_opcode Mar 25, 2014
ecpsvm.c Standard preamble (modules A-E) Dec 27, 2012
ecpsvm.h Standard preamble (modules A-E) Dec 27, 2012
esa390.h Bit definitions for quantum exception Aug 11, 2014
esame.c Correct STFL_8_RES_REF_BITS_MUL Mar 14, 2016
external.c Standard preamble (modules A-E) Dec 27, 2012
faketape.c Standard preamble (modules F-G) Dec 27, 2012
fbadasd.c Standard preamble (modules F-G) Dec 27, 2012
feat370.h Standard preamble (modules F-G) Dec 27, 2012
feat390.h Standard preamble (modules F-G) Dec 27, 2012
feat900.h Activate Floating-point extension facility Aug 12, 2014
featall.h STFLE bit settings for 912 features Apr 9, 2013
featchk.h Floating-point extension facility pre-req check May 10, 2014
feature.h Standard preamble (modules F-G) Dec 27, 2012
fillfnam.c Standard preamble (modules F-G) Dec 27, 2012
fillfnam.h Standard preamble (modules F-G) Dec 27, 2012
float.c Cosmetic changes to make comments consistent Sep 7, 2015
fthreads.c Standard preamble (modules F-G) Dec 27, 2012
fthreads.h Add support for Microsoft VS2015 Mar 14, 2016
general1.c Program interrupt in CSST instruction Apr 2, 2016
general2.c Excessive CPU consumption in CUxx instructions Apr 2, 2016
general3.c Load/Store-on-Condition Facility: incorrect mask handling Jul 27, 2014
getopt.c Standard preamble (modules F-G) Dec 27, 2012
getopt.h Standard preamble (modules F-G) Dec 27, 2012
hao.c Allow regex replacement variables in HAO commands Jun 15, 2013
hbyteswp.h Standard preamble (modules H-L) Dec 28, 2012
hchan.c Standard preamble (modules H-L) Dec 28, 2012
hchan.h Standard preamble (modules H-L) Dec 28, 2012
hconsole.c Standard preamble (modules H-L) Dec 28, 2012
hconsole.h Standard preamble (modules H-L) Dec 28, 2012
hconsts.h CTCE device added supporting Enhanced CTC emulation May 29, 2014
hdl.c Allow for an ending \0 in the malloc for dtname Mar 14, 2016
hdl.h Standard preamble (modules H-L) Dec 28, 2012
hdlmain.c Machine check when dyncrypt is not loaded May 6, 2016
hdteq.c CTCE device added supporting Enhanced CTC emulation May 29, 2014
herc_getopt.h Standard preamble (modules H-L) Dec 28, 2012
hercifc.c Standard preamble (modules H-L) Dec 28, 2012
hercifc.h Standard preamble (modules H-L) Dec 28, 2012
herclin.c Standard preamble (modules H-L) Dec 28, 2012
herclogo.txt copyright notice Jan 23, 2009
hercules.cnf Remove obsolete CVS log entries from hercules.cnf May 3, 2013
hercules.h Standard preamble (modules H-L) Dec 28, 2012
hercules.ico Hercules executables ICON for Windows builds Dec 31, 2005
hercver.rc Update copyright notice and URL Nov 15, 2015
hercwind.h Reinstate math.h required for ldexp in clock.c Nov 13, 2013
hetget.c Standard preamble (modules H-L) Dec 28, 2012
hetinit.c Standard preamble (modules H-L) Dec 28, 2012
hetlib.c Standard preamble (modules H-L) Dec 28, 2012
hetlib.h Standard preamble (modules H-L) Dec 28, 2012
hetmap.c Eliminate warning: variable opts is used uninitialized Mar 16, 2014
hettape.c Standard preamble (modules H-L) Dec 28, 2012
hetupd.c Standard preamble (modules H-L) Dec 28, 2012
hextapi.h Standard preamble (modules H-L) Dec 28, 2012
hexterns.h Increase MAX_ARGS to 128 Jan 3, 2013
history.c Standard preamble (modules H-L) Dec 28, 2012
history.h Standard preamble (modules H-L) Dec 28, 2012
hmacros.h Spacing corrections in hmacros.h Mar 24, 2014
hostinfo.c Set realcpu field in DIAG204 extended partition info Oct 21, 2013
hostinfo.h Standard preamble (modules H-L) Dec 28, 2012
hostopts.h Allow bridging an LCS tapX interface without breaking Windows compati… Jul 29, 2014
hsccmd.c Eliminate warning: windex may be used uninitialized Mar 15, 2014
hscmisc.c Incorrect instruction trace operand data and "u" command disassembles… Aug 16, 2015
hscutl.c Reset tok->val when freed; correct GCC warning Mar 14, 2016
hscutl.h Standard preamble (modules H-L) Dec 28, 2012
hscutl2.c Standard preamble (modules H-L) Dec 28, 2012
hsocket.c Standard preamble (modules H-L) Dec 28, 2012
hsocket.h Standard preamble (modules H-L) Dec 28, 2012
hstdinc.h Reinstate math.h required for ldexp in clock.c Nov 13, 2013
hstdint.h Standard preamble (modules H-L) Dec 28, 2012
hstructs.h Improved CTCE device now alos supporting XCF + bug fixes Mar 14, 2016
hsys.c Standard preamble (modules H-L) Dec 28, 2012
hthreads.h Standard preamble (modules H-L) Dec 28, 2012
httpmisc.h Standard preamble (modules H-L) Dec 28, 2012
httpserv.c Scrambled input via webserver command input field Mar 29, 2015
htypes.h Eliminate warning: format specifies type long long Mar 17, 2014
ieee.c Floating-point extension facility comments Aug 12, 2014
impl.c Explicitly initialize sa_mask to its default value Mar 14, 2016
inline.h Standard preamble (modules H-L) Dec 28, 2012
io.c Standard preamble (modules H-L) Dec 28, 2012
ipl.c Typo in HHCCP027E error message in ipl.c Apr 2, 2016
linklist.h Standard preamble (modules H-L) Dec 28, 2012
loadparm.c Standard preamble (modules H-L) Dec 28, 2012
logger.c Standard preamble (modules H-L) Dec 28, 2012
logger.h Standard preamble (modules H-L) Dec 28, 2012
logmsg.c Standard preamble (modules H-L) Dec 28, 2012
losc.c Standard preamble (modules H-L) Dec 28, 2012
ltdl.c Eliminate warning: parameter set but not used Mar 27, 2014
ltdl.h The big move: moving MSVC (mingw_port) branch to the trunk. Cross your Sep 24, 2005
machchk.c Standard preamble (modules M-S) Dec 28, 2012
machdep.h Activate OPTION_STRICT_ALIGNMENT to avoid segfault in -O3 build Aug 1, 2016
makefile-dllmod.msvc Standard preamble (modules M-S) Dec 28, 2012
makefile.msvc Add CVS message log Dec 8, 2006
memrchr.c Standard preamble (modules M-S) Dec 28, 2012
memrchr.h Standard preamble (modules M-S) Dec 28, 2012
omatape.c Eliminate omatape.c warning messages Feb 16, 2014
opcode.c Remove unused opcd operand from RI instruction decoders Jun 2, 2015
opcode.h Remove unused opcd operand from RI instruction decoders Jun 2, 2015
panel.c Panel command may cause crash under Mac OS X Dec 24, 2013
parser.c Standard preamble (modules M-S) Dec 28, 2012
parser.h Standard preamble (modules M-S) Dec 28, 2012
pfpo.c Eliminate warning: function defined but not used Jun 14, 2014
plo.c Standard preamble (modules M-S) Dec 28, 2012
printer.c Load FCB unit check when index byte is omitted Sep 3, 2015
pttrace.c Standard preamble (modules M-S) Dec 28, 2012
pttrace.h Standard preamble (modules M-S) Dec 28, 2012
qdio.c Standard preamble (modules M-S) Dec 28, 2012
qeth.c Standard preamble (modules M-S) Dec 28, 2012
scedasd.c Standard preamble (modules M-S) Dec 28, 2012
scsitape.c Eliminate scsitape.c warning messages Feb 16, 2014
scsitape.h Standard preamble (modules M-S) Dec 28, 2012
service.c Fix to support mainsize >= 64G Nov 19, 2015
service.h Report percent utilization for each processor Jul 14, 2014
shared.c Eliminate warning: operation may be undefined Apr 8, 2014
shared.h Standard preamble (modules M-S) Dec 28, 2012
sie.c Force a TLB/ALB purge on a cached guest regs upon SIE entry Aug 4, 2016
sllib.c Standard preamble (modules M-S) Dec 28, 2012
sllib.h Standard preamble (modules M-S) Dec 28, 2012
sockdev.c Standard preamble (modules M-S) Dec 28, 2012
sockdev.h Standard preamble (modules M-S) Dec 28, 2012
sr.c Eliminate warnings when compiling with zlib-1.2.6 or later Apr 8, 2014
sr.h Fix regression of fa5db3d May 31, 2014
stack.c Standard preamble (modules M-S) Dec 28, 2012
stamp-h.in HTML updates, 0671 DASD blocksize fix, and FBA DASD control unit spec… Apr 19, 2002
strsignal.c Standard preamble (modules M-S) Dec 28, 2012
tapeccws.c Eliminate tapeccws.c warning messages Feb 16, 2014
tapecopy.c Standard preamble (modules T-X) Dec 28, 2012
tapedev.c Eliminate tapedev.h warning messages Feb 16, 2014
tapedev.h Eliminate tapedev.h warning messages Feb 16, 2014
tapemap.c Standard preamble (modules T-X) Dec 28, 2012
tapesplt.c Standard preamble (modules T-X) Dec 28, 2012
timer.c Standard preamble (modules T-X) Dec 28, 2012
trace.c Standard preamble (modules T-X) Dec 28, 2012
tt32api.h New TT32 pre-v3.3 header and stats Jun 2, 2009
tuntap.c Standard preamble (modules T-X) Dec 28, 2012
tuntap.h Standard preamble (modules T-X) Dec 28, 2012
vector.c Standard preamble (modules T-X) Dec 28, 2012
version.c Eliminate NO_IEEE_SUPPORT and associated checks Nov 11, 2013
version.h Update copyright notice and URL Nov 15, 2015
vm.c Standard preamble (modules T-X) Dec 28, 2012
vmd250.c Eliminate warning: status may be used uninitialized Mar 15, 2014
vmd250.h Standard preamble (modules T-X) Dec 28, 2012
vstore.c Standard preamble (modules T-X) Dec 28, 2012
vstore.h Standard preamble (modules T-X) Dec 28, 2012
w32chan.c Standard preamble (modules T-X) Dec 28, 2012
w32chan.h Standard preamble (modules T-X) Dec 28, 2012
w32ctca.c Standard preamble (modules T-X) Dec 28, 2012
w32ctca.h Standard preamble (modules T-X) Dec 28, 2012
w32dl.h Standard preamble (modules T-X) Dec 28, 2012
w32mtio.h Standard preamble (modules T-X) Dec 28, 2012
w32stape.c Standard preamble (modules T-X) Dec 28, 2012
w32stape.h Standard preamble (modules T-X) Dec 28, 2012
w32util.c Permit concurrent read access to printer and punch files May 3, 2013
w32util.h Standard preamble (modules T-X) Dec 28, 2012
xstore.c Standard preamble (modules T-X) Dec 28, 2012

README.COMMADPT

Preliminary 2703 BSC Support

Only allows Point to Point connection.


Hercules device statement :

CCUU 2703 lport=port lhost=host rhost=host rport=port dial=IN|OUT|INOUT|NO
          [pto=nnn|0|-1] [rto=nnn|0|-1] [eto=nnn|0|-1]

lport : the local TCP port number or service name on which the line will listen
        for incoming TCP calls
        This parameter is irrelevant and is ignored for DIAL=OUT
        for DIAL=IN|INOUT|NO, this parameter is mandatory

cwlhost : The local interface IP address on which to listen.
        if not specified, all interfaces will be used.
        ex:
        lhost=127.0.0.1 : Only accept calls from local host
        lhost=192.168.0.1 : Only accept calls from hosts
                that can be routed through the interface
                that has an IP address of 192.168.0.1
                If there is no 192.168.0.1 local IP address,
                this will fail.
        This parameter is irrelevant and is ignored for DIAL=OUT
        for DIAL=IN|INOUT|NO, this parameter is mandatory


rhost : the remote host ip address or name
        This parameter is irrelevant and is ignored for DIAL=IN
        for DIAL=OUT|INOUT|NO, this parameter is mandatory

rport : the remote port number or service name
        This parameter is irrelevant and is ignored for DIAL=IN
        for DIAL=OUT|INOUT|NO, this parameter is mandatory

rto, pto, eto : Read, Poll and Enable Timeout values in miliseconds.
        specifying 0 means No Timeout (infinite wait). -1 Means immediate
        timeout.

        The read timeout is how long the handler will wait for an ending
        character after the last character was received or the I/O initiated.
        The read timeout default is 3000 Miliseconds (3 Seconds)

        The poll timeout is how long the handler will wait for a polled
        station to respond to a poll request.
        The poll timeout default is 3000 Miliseconds (3 Seconds)

        The enable timeout is how long the handler will wait for the TCP
        connection to be established.
        The enable timeout default is 10000 Miliseconds (10 Seconds), except
        if DIAL=NO is also specified, in which case the enable timeout defaults
        to 0.

        Note : the ETO parameter is ignored if DIAL=NO is not specified.
               for a dialed line, there is no enable timeout. If the eto
               parameter is specified and DIAL is not "NO", then a warning message
               is issued and the parameter is ignored.


dial=IN|OUT|INOUT|NO
        Indicate call direction (if any).
        This parameter also modifies the behaviour of certain CCWS
        as well as TCP incoming call handling :

        ENABLE :
                DIAL=IN|DIAL=INOUT
                        Wait forever for an incoming call

                DIAL=NO
                        Completes immediatelly if a call
                        is already present
                        Otherwise, attemps connecting to the
                        remote end
                        if the call fails, ENABLE exits with
                        Int Req status
                DIAL=OUT
                        Enable is not a valid CCW for a DIALOUT
                        only line
        DIAL :
                DIAL=IN|DIAL=NO
                        DIAL is not a valid CCW for a DIAL IN
                        or non-switched line
                DIAL=OUT|DIAL=INOUT
                        The outgoing call is attempted

        Incomming TCP call :
                In any case, if a call is already present, the
                call is rejected.

                DIAL=NO :
                        The call is accepted, even if no CCW is
                        currently executing

                DIAL=OUT :
                        The call is rejected

                DIAL=IN|DIAL=INOUT
                        The call is accepted if the line is currently
                        executing an ENABLE ccw.


The communication protocol :

        The communication protocol is basic. Every character written
        by the guest program with a WRITE CCW is transfered to the
        remote end, untranslated and untouched (except for Transparent
        BSC rules which deem that DLE characters are doubled when the
        program has previously written a DLE/STX sequence).


Dial data format

        Dial data is originally as follows :
                x x x x 0 0 0 0 : Dial # 0
                  .........
                x x x x 1 0 0 1 : Dial # 9
                x x x x 1 1 0 0 : EON
                x x x x 1 1 0 1 : SEP

        In order to perform an outgoing call,
        the data must follow these specifications :

        N[N[N]]SEPN[N[N]]SEPN[N[N]]SEPN[N[N]]]SEPN[..[N]][EON]

        Where N is any dialing number from 0 to 9 and SEP
        is the separator.

        The 4 first group of digits represet the IP address.
        The last group represent a TCP port number.

        For example (* is the SEP character representation) :

        192*168*0*1*8888 : will issue a TCP connection to
                           192.168.0.1 port 8888

        The EON is optional. If it is present, it must be the
        last character of the dial data.

Bugs, Caveats

        The Address Prepare is not implemented
        The POLL CCW Has not been tested
        Group DIAL IN is not implemented
        DIAL CCW Not tested
        There is 1 thread per line, when there should be 1 thread for ALL lines.
        MAXDEVT may have to be adjusted under WINDOWS to accomodate for a large number of lines
            (because some I/O may take an undefinite amount of time).
        There is no 'REAL' Bsc line support yet.