VMS-Specific Python Modules: Difference between revisions
| Line 424: | Line 424: | ||
* <code>il:object</code> item list, created via [[VMS specific Python modules#new()->object|<code>vms.ile3.new()</code>]] | * <code>il:object</code> item list, created via [[VMS specific Python modules#new()->object|<code>vms.ile3.new()</code>]] | ||
See '''OpenVMS System Services Reference Manual''' for SYS$CRELNM. | See '''OpenVMS System Services Reference Manual''' for SYS$CRELNM. | ||
==== returns ==== | |||
Status code | |||
=== trnlnm(attr:int, tabnam:str, lognam:str, acmode:int, il:object)->int === | |||
Returns information about the specified logical name. | |||
==== parameters ==== | |||
* <code>attr:int</code> attributes controlling the search for the logical name. See '''vms.lnmdef''' | |||
* <code>tabnam:str</code> name of the logical name table or the name of a searchlist logical name | |||
* <code>lognam:str</code> logical name for which information is to be returned | |||
* <code>acmode:int</code> access mode to be used in the translation. See '''vms.psldef''' | |||
* <code>il:object</code> item list, created via [[VMS specific Python modules#new()->object|<code>vms.ile3.new()</code>]] | |||
See '''OpenVMS System Services Reference Manual''' for SYS$TRNLNM. | |||
==== returns ==== | |||
Status code | |||
=== dellnm(tabnam:str, lognam:str, acmode:int)->int === | |||
Deletes all logical names with the specified name. | |||
==== parameters ==== | |||
* <code>tabnam:str</code> name of the logical name table or the name of a searchlist logical name | |||
* <code>lognam:str</code> logical name to be deleted | |||
* <code>acmode:int</code> access mode to be used in the delete operation. See '''vms.psldef''' | |||
==== returns ==== | |||
Status code | |||
=== device_scan(search_devnam:str, item_list:object, context:int)->list === | |||
Returns the names of all devices that match a specified set of search criteria. | |||
==== parameters ==== | |||
* <code>search_devnam:str</code> name of the device for which <code>device_scan</code> to search | |||
* <code>item_list:object</code> item list specifying search criteria | |||
* <code>context:int</code> value used to indicate the current position of the search. On the initial call it must contain <code>0</code>. | |||
See '''OpenVMS System Services Reference Manual''' for SYS$DEVICE_SCAN | |||
==== returns ==== | |||
The list: | |||
* <code>int</code> status code of the operation | |||
* <code>str</code> found device name | |||
* <code>int</code> context | |||
=== uicstr(uic:int, flags:int)->list === | |||
Converts UIC to a string. | |||
==== parameters ==== | |||
* <code>uic:int</code> UIC | |||
* <code>flags:int</code> | |||
** <code>0</code> - use "!%I" SYS$FAO format | |||
** <code>1</code> - use "!%U" SYS$FAO format | |||
==== returns ==== | |||
The list: | |||
* <code>int</code> status code of the operation | |||
* <code>str</code> UIC string | |||
=== getdvi(dev_nam:str, item_list:object)->int === | |||
Returns information related to the primary and secondary device characteristics of an I/O device. | |||
==== parameters ==== | |||
* <code>dev_nam:str</code> the name of the device for which information is to be returned | |||
* <code>item_list:object</code> item list specifying which information about the device is to be returned. | |||
See '''OpenVMS System Services Reference Manual''' for SYS$GETDVI | |||
==== returns ==== | |||
Status code | |||
=== getjpi(pid:int, pnam:str, item_list:object)->list === | |||
Returns information about one or more processes of the system or across the OpenVMS Cluster system. | |||
==== parameters ==== | |||
* <code>pid:int</code> process identification | |||
* <code>pnam:str</code> name of the process | |||
* <code>item_list:object</code> item list specifying which information about the process or processes is to be returned | |||
See '''OpenVMS System Services Reference Manual''' for SYS$GETJPI | |||
==== returns ==== | |||
The list: | |||
* <code>int</code> status code of the operation | |||
* <code>int</code> process id | |||
=== getlki(lki:int, item_list:object)->list === | |||
Returns information about the lock database on a system. | |||
==== parameters ==== | |||
* <code>lki:int</code> identification of the lock (lock ID) information about which needs to be returned | |||
* <code>item_list:object</code> item list specifying the lock information to be returned | |||
See '''OpenVMS System Services Reference Manual''' for SYS$GETLKI | |||
==== returns ==== | |||
The list: | |||
* <code>int</code> status code of the operation | |||
* <code>int</code> lock identification | |||
=== getmsg(msgid:int, flags:int)->list === | |||
Returns message text associated with a given message identification code. | |||
==== parameters ==== | |||
* <code>msgid:int</code> identification of the message to be retrieved | |||
* <code>flags:int</code> message components to be returned | |||
See '''OpenVMS System Services Reference Manual''' for SYS$GETMSG | |||
==== returns ==== | |||
The list: | |||
* <code>int</code> status code of the operation | |||
* <code>str</code> message string | |||
* <code>int</code> optional information | |||
=== getqui(func:int, context:int, item_list:object)->list === | |||
Returns information about queues and the jobs initiated from these queues. | |||
==== parameters ==== | |||
* <code>func:int</code> function code specifying the function that <code>getqui</code> is to perform. See '''vms.quidef''' | |||
* <code>context:int</code> context stream for this call | |||
* <code>item_list:object</code> item list supplying the information to be used by the function | |||
See '''OpenVMS System Services Reference Manual''' for SYS$GETQUI | |||
==== returns ==== | |||
The list: | |||
* <code>int</code> status code of the operation | |||
* <code>int</code> context | |||
=== getrmi(item_list:object)->int === | |||
Returns system performance information about the local system. | |||
==== parameters ==== | |||
* <code>item_list:object</code> item list specifying which information about the local node is to be returned | |||
See '''OpenVMS System Services Reference Manual''' for SYS$GETRMI | |||
==== returns ==== | |||
Status code | |||
=== getsyi(csid:int, node_name:str, item_list:object)->list === | |||
Returns information about the local system or about other systems in an OpenVMS Cluster system. | |||
==== parameters ==== | |||
* <code>csid:int</code> OpenVMS Cluster system identification | |||
* <code>node_name:str</code> name of the node about which information is to be returned | |||
* <code>item_list:object</code> item list specifying which information about the node or nodes to return | |||
See '''OpenVMS System Services Reference Manual''' for SYS$GETSYI | |||
==== returns ==== | |||
The list: | |||
* <code>int</code> status code of the operation | |||
* <code>int</code> csid | |||
=== gettim()->list === | |||
Returns the current system time in a 64-bit format. | |||
==== parameters ==== | |||
<code>None</code> | |||
==== returns ==== | |||
The list: | |||
* <code>int</code> status code of the operation | |||
* <code>int</code> current system time | |||
=== getuai(user_name:str, item_list:object)->int === | |||
Returns authorization information about the specified user. | |||
==== parameters ==== | |||
* <code>user_name:str</code> name of the user to get authorization information for | |||
* <code>item_list:object</code> item list specifying which information to return | |||
See '''OpenVMS System Services Reference Manual''' for SYS$GETUAI | |||
==== returns ==== | |||
Status code | |||
=== hiber()->int === | |||
Allows a process to make itself inactive but to remain known to the system so that it can be interrupted. | |||
==== parameters ==== | |||
<code>None</code> | |||
==== returns ==== | |||
Status code | |||
=== schdwk(pid:int, pname:str, time:int)->list === | |||
Schedules the awakening (restart) of a process that has placed itself in the state of hibernation with the Hibernate service. | |||
==== parameters ==== | |||
* <code>pid:int</code> process identification (PID) of the process to be awakened | |||
* <code>pname:str</code> name of the process to be awakened | |||
* <code>time:int</code> time at which the process to be awakened | |||
See '''OpenVMS System Services Reference Manual''' for SYS$SCHDWK | |||
==== returns ==== | |||
The list: | |||
* <code>int</code> status code of the operation | |||
* <code>int</code> pid | |||
=== add_holder(id:int, holder:int, attrib:int)->int === | |||
Adds a specified holder record to a target identifier. | |||
==== parameters ==== | |||
* <code>id:int</code> target identifier granted to the specified holder | |||
* <code>holder:int</code> holder identifier that is granted access to the target identifier | |||
* <code>attrib:int</code> attributes to be placed in the holder record | |||
See '''OpenVMS System Services Reference Manual''' for SYS$ADD_HOLDER | |||
==== returns ==== | ==== returns ==== | ||
Status code | Status code | ||
== rdb == | == rdb == | ||
Revision as of 08:28, 31 August 2020
VMS specific Python modules.
vms.decc
Wraps the C Run-Time Library for OpenVMS Systems functions.
dlopen_test(name:str)->int
Tries to open a shared image.
parameters
name:strpath to the shared image
returns
1if the shared image exists and can be opened by dlopen()0otherwise
fix_time(vms_time:int)->int
Converts VMS time to the Unix time.
parameters
vms_time:intVMS system time
returns
Time in Unix format (seconds that have elapsed since 1970.01.01)
from_vms(vms_path:str, wild_flag:int)->list
Converts VMS path to a list of Unix paths.
parameters
vms_path:strpath in VMS format (supports wildcards)wild_flag:intIf set to0, wildcards found in thevms_pathare not expanded
returns
List of paths in Unix format
getenv(name:str, def_value:str)->str
Gets the specified environment variable value. See getenv() description in the C Run-Time Library Reference Manual for OpenVMS Systems documentation.
parameters
name:strname of the environment variabledef_value:strdefault value
returns
Environment variable value
sleep(seconds:int)->int
Suspends execution of the current process or thread for the specified number of seconds.
parameters
seconds:intseconds to sleep
returns
The number of seconds left to the end of the sleep period if sleep is interrupted.
0 if the process slept for the specified number of seconds.
sysconf(name:int)->int
Provides a method for determining the current value of a configurable system limit or whether optional features are supported.
parameters
name:intsystem variable to be queried
returns
Requested value
to_vms(unix_path:str, allow_wild:int, no_directory:int)->list
Converts UNIX style file specifications to OpenVMS file specifications.
parameters
unix_path:strfile name in UNIX style file specification formatallow_wild:intIf set to0, wildcards found inunix_pathare not expandedno_directory:intAn integer that has one of the following values:- 0 - Directory allowed
- 1 - Prevent expansion of the string as a directory name
- 2 - Force expansion of the string as a directory name
returns
List of paths in OpenVMS style
unixtime(vms_time:int)->int
Converts OpenVMS system time to the Unix local time.
parameters
vms_time:intOpenVMS system time
returns
Unix time
vmstime(unix_time:int)->int
Converts Unix time to the OpenVMS system time.
parameters
unix_time:intUnix time
returns
OpenVMS system time
vms.ile3
Provides functions for working with the list. [1]
new()->object
Creates empty item list.
parameters
None
returns
New empty item list
delete(il:object)->None
Deletes item list.
parameters
il:objectitem list to be removed
returns
OpenVMS system time
size(il:object)->int
Gets size of the item list.
parameters
il:objectitem list
returns
The size of the specified item list
addint(il:object, item:int, item_type:int, item_value:int)->None
Adds a new integer to the item list.
parameters
il:objectitem listitem:intitem to additem_type:inttype of the item. See vms.dscdefitem_value:intvalue of the item
returns
None
getint(il:object, index:int)->int
Gets the integer at the specified index in the list.
parameters
il:objectitem listindex:intindex of the item to get
returns
Integer value
gethex(il:object, index:int)->str
Gets the integer at the specified index in the item list and returns it as a hexadecimal string.
parameters
il:objectitem listindex:intindex of the item to get
returns
Hexadecimal string
addstr(il:object, item:int, item_value:str, item_length:int)->None
Adds the specified string to the item list. If the item_value is not None, the item_length is ignored and the length of the buffer will be the same as the length of the item_value.
parameters
il:objectitem listitem:intitem to additem_value:strvalue to add (orNone)item_length:intlength of the buffer if theitem_valueisNone
returns
None
addstrd(il:object, item:int, item_value:str, item_length:int)->None
Adds the specified space-expanded string to the item list. The first byte of the buffer is the length of the string. If the item_value is longer than the item_length, it will be truncated.
parameters
il:objectitem listitem:intitem to additem_value:strvalue to additem_length:intlength of the buffer (the resulting string length is one byte less)
returns
None
addstrn(il:object, item:int, item_value:str, item_length:int)->None
Adds the specified space-expanded string to the item list. If the item_value is longer than the item_length, it will be truncated.
parameters
il:objectitem listitem:intitem to additem_value:strvalue to additem_length:intlength of the buffer
returns
None
getstr(il:object, index:int, flag:int)->str
Gets the string at the specified index in the item list.
parameters
il:objectitem listindex:intindex of the item to getflag:intif set to1, the first byte of the resulting string is the length of the string
returns
String
addbin(il:object, item:int, item_value:int, item_offset:int, item_len:int)->None
Adds a new binary item to the list. It will be interpreted as a string.
parameters
il:objectitem listitem:intitem to additem_value:intvalue to storeitem_offset:intstarting byteitem_len:intamount of bytes
returns
None
getbyte(il:object, index:int, item_offset:int)->int
Gets the byte at the specified position in the item list.
parameters
il:objectitem listindex:intindex of the itemitem_offset:intstarting byte
returns
Integer value of the specified byte
vms.lib
Wraps the OpenVMS RTL Library(LIB$) functions.
create_dir(name:str, uic:int, pe:int, pv:int)->int
Creates a directory.
parameters
name:strname of the directory to be created (specified in OpenVMS style)uic:intunsigned integer value of the owner UIC:None- the current user0- owner of the parent directory
pe:intprotection enable. See full documentation in the OpenVMS RTL Library(LIB$) Manual for LIB$CREATE_DIR.pv:intprotection value
returns
vms.ssdef.SS__CREATEDone or more directories createdvms.ssdef.SS__NORMALall specified directories already exist- another error. See in vms.ssdef
date_time()->list
Gets current date and time.
parameters
None
returns
The list:
intstatus code of the operationstrresulting string
get_ef()->list
Allocates a local event flag.
parameters
None
returns
The list:
intstatus code of the operationintresulting event flag
free_ef(ef:int)->int
Releases the local event flag.
parameters
ef:intthe local event flag
returns
Status code of the operation
put_common(common:str)->int
Copies a string into the common area.
parameters
common:strstring to copy
returns
Status code of the operation
get_common()->list
Gets the string from the common area.
parameters
None
returns
The list:
intstatus code of the operationstrresulting string
get_hostname(flags:int)->list
Gets the host name of the local system.
parameters
flags:intif set to1, the host node name is returned in the parsable form
returns
The list:
intstatus code of the operationstrresulting host node name
getjpi(item_code:int, pid:int, pname:str)->list
Gets the specified job/process information as a string.
parameters
item_code:intitem identifier code defining the item of information to be returned. See vms.jpidefpid:intprocess idpname:strprocess name
For valid combination of the values of pid and pname see the OpenVMS RTL Library(LIB$) Manual for LIB$GETJPI. The resulting pid is not returned.
returns
The list:
intstatus code of the operationstrresulting string
getsyi(item_code:int, node_name:str)->list
Gets system wide information as a string.
parameters
item_code:intitem identifier code defining the item of information to be returned. See vms.syidefnode_name:strnode name
returns
The list:
intstatus code of the operationstrresulting stringintresulting cluster system id
spawn(command:str, input_file:str, output_file:str, flags:int, pname:str)->list
Requests the command language interpreter (CLI) of the calling process to spawn a subprocess for executing CLI commands.
parameters
command:strcommand to executeinput_file:strequivalence name to be associated with the logical name SYS$INPUToutput_file:strequivalence name to be associated with the logical name SYS$OUTPUTflags:intflag bits that designate optional behavior. See vms.clidefpname:strname defined for the subprocess
returns
The list:
intstatus code of the operationintprocess id of the spawned process
do_command(command:str)->None
Stops program execution and directs the command language interpreter (CLI) to execute a command that is supplied as the argument.
parameters
command:strcommand to execute
returns
If successful, it does not return control to the calling program.
vms.sys
Wraps the OpenVMS System Services functions.
asctim(vms_time:int, time_only:int)->list
Converts an absolute or delta time from 64-bit system time format to an ASCII string.
parameters
vms_time:intOpenVMS system time. A negative time value represents a delta time.time_only:intif set to1, asctim returns the hour only.
returns
The list:
intstatus code of the operationstrresulting string
bintim(time_str:str)->list
Converts an ASCII string to an absolute or delta time value in the system 64-bit time format.
parameters
time_str:strin format:- Absolute Time: dd-mmm-yyyy hh:mm:ss.cc
- Delta Time: dddd hh:mm:ss.cc
returns
The list:
intstatus code of the operationintresulting time value
asctoid(name:str)->list
Translates the specified identifier name into its binary identifier value.
parameters
name:stridentifier name
returns
The list:
intstatus code of the operationintresulting identifier valueintresulting identifier attributes. See vms.kgbdef
idtoasc(id_val:int, context:int)->list
Translates the specified identifier value to the identifier name.
parameters
id_val:intidentifier value. See OpenVMS System Services Reference Manual for SYS$IDTOASCcontext:intcontext value used whenidtoascis called repeatedly. Must be initialized with the value 0.
returns
The list:
intstatus code of the operationstrresulting identifier nameintresulting identifier valueintresulting identifier attributes. See vms.kgbdefintresulting context
crembx(tmp:int, maxmsg:int, bufquo:int, promsk:int, acmode:int, mbx_name:string, flags:int)->list
Creates a virtual mailbox device.
parameters
tmp:intthe first bit specifies a permanent mailboxmaxmsg:intmaximum size of a message (in bytes)bufquo:intnumber of bytes of system dynamic memory that can be used to buffer messages sent to the mailboxpromsk:intprotection mask to be associated with the created mailboxacmode:intaccess mode to be associated with the channel to which the mailbox is assignedmbx_name:stringlogical name to be assigned to the mailboxflags:intoptions for the assign operation. See vms.cmbdef
returns
The list:
intstatus code of the operationintresulting channel
delmbx(channel:int)->int
Marks a permanent mailbox for deletion.
parameters
channel:intmailbox channel
returns
Status code
assign(devnam:str, acmode:int, mbxnam:str, flags:int)->list
Provides a process with an I/O channel.
parameters
devnam:strname of the deviceacmode:intaccess mode to be associated with the channelmbxnam:strlogical name of the mailbox to be associated with the deviceflags:intan optional device-specific argument
returns
The list:
intstatus code of the operationintresulting channel
dassgn(channel:int)->int
Unassigns (releases) an I/O channel.
parameters
channel:intnumber of the I/O channel to be unassigned
returns
Status code
readvblk(channel:int, max_read:int, block:int, fmod:int)->list
Read from I/O channel.
parameters
channel:intI/O channelmax_read:intamount of bytes to readblock:intstarting blockfmod:intfunction code modifiers
returns
The list:
intstatus code of the operationbyteresulting bufferintI/O completion code
writevblk(channel:int, buffer:bytes, block:int, fmod:int)->list
Write to I/O channel.
parameters
channel:intI/O channelbuffer:bytesbytes to writeblock:intstarting blockfmod:intfunction code modifiers
returns
The list:
intstatus code of the operationintamount of written bytesintI/O completion code
cancel(channel:int)->int
Cancel I/O operation.
parameters
channel:intI/O channel
returns
Status code
crelnm(attr:int, tabnam:str, lognam:str, acmode:int, il:object)->int
Creates a logical name and specifies its equivalence names.
parameters
attr:intattributes to be associated with the logical name. See vms.lnmdeftabnam:strname of the table in which to create the logical namelognam:strlogical name to be createdacmode:intaccess mode to be associated with the logical name. See vms.psldefil:objectitem list, created viavms.ile3.new()
See OpenVMS System Services Reference Manual for SYS$CRELNM.
returns
Status code
trnlnm(attr:int, tabnam:str, lognam:str, acmode:int, il:object)->int
Returns information about the specified logical name.
parameters
attr:intattributes controlling the search for the logical name. See vms.lnmdeftabnam:strname of the logical name table or the name of a searchlist logical namelognam:strlogical name for which information is to be returnedacmode:intaccess mode to be used in the translation. See vms.psldefil:objectitem list, created viavms.ile3.new()
See OpenVMS System Services Reference Manual for SYS$TRNLNM.
returns
Status code
dellnm(tabnam:str, lognam:str, acmode:int)->int
Deletes all logical names with the specified name.
parameters
tabnam:strname of the logical name table or the name of a searchlist logical namelognam:strlogical name to be deletedacmode:intaccess mode to be used in the delete operation. See vms.psldef
returns
Status code
device_scan(search_devnam:str, item_list:object, context:int)->list
Returns the names of all devices that match a specified set of search criteria.
parameters
search_devnam:strname of the device for whichdevice_scanto searchitem_list:objectitem list specifying search criteriacontext:intvalue used to indicate the current position of the search. On the initial call it must contain0.
See OpenVMS System Services Reference Manual for SYS$DEVICE_SCAN
returns
The list:
intstatus code of the operationstrfound device nameintcontext
uicstr(uic:int, flags:int)->list
Converts UIC to a string.
parameters
uic:intUICflags:int0- use "!%I" SYS$FAO format1- use "!%U" SYS$FAO format
returns
The list:
intstatus code of the operationstrUIC string
getdvi(dev_nam:str, item_list:object)->int
Returns information related to the primary and secondary device characteristics of an I/O device.
parameters
dev_nam:strthe name of the device for which information is to be returneditem_list:objectitem list specifying which information about the device is to be returned.
See OpenVMS System Services Reference Manual for SYS$GETDVI
returns
Status code
getjpi(pid:int, pnam:str, item_list:object)->list
Returns information about one or more processes of the system or across the OpenVMS Cluster system.
parameters
pid:intprocess identificationpnam:strname of the processitem_list:objectitem list specifying which information about the process or processes is to be returned
See OpenVMS System Services Reference Manual for SYS$GETJPI
returns
The list:
intstatus code of the operationintprocess id
getlki(lki:int, item_list:object)->list
Returns information about the lock database on a system.
parameters
lki:intidentification of the lock (lock ID) information about which needs to be returneditem_list:objectitem list specifying the lock information to be returned
See OpenVMS System Services Reference Manual for SYS$GETLKI
returns
The list:
intstatus code of the operationintlock identification
getmsg(msgid:int, flags:int)->list
Returns message text associated with a given message identification code.
parameters
msgid:intidentification of the message to be retrievedflags:intmessage components to be returned
See OpenVMS System Services Reference Manual for SYS$GETMSG
returns
The list:
intstatus code of the operationstrmessage stringintoptional information
getqui(func:int, context:int, item_list:object)->list
Returns information about queues and the jobs initiated from these queues.
parameters
func:intfunction code specifying the function thatgetquiis to perform. See vms.quidefcontext:intcontext stream for this callitem_list:objectitem list supplying the information to be used by the function
See OpenVMS System Services Reference Manual for SYS$GETQUI
returns
The list:
intstatus code of the operationintcontext
getrmi(item_list:object)->int
Returns system performance information about the local system.
parameters
item_list:objectitem list specifying which information about the local node is to be returned
See OpenVMS System Services Reference Manual for SYS$GETRMI
returns
Status code
getsyi(csid:int, node_name:str, item_list:object)->list
Returns information about the local system or about other systems in an OpenVMS Cluster system.
parameters
csid:intOpenVMS Cluster system identificationnode_name:strname of the node about which information is to be returneditem_list:objectitem list specifying which information about the node or nodes to return
See OpenVMS System Services Reference Manual for SYS$GETSYI
returns
The list:
intstatus code of the operationintcsid
gettim()->list
Returns the current system time in a 64-bit format.
parameters
None
returns
The list:
intstatus code of the operationintcurrent system time
getuai(user_name:str, item_list:object)->int
Returns authorization information about the specified user.
parameters
user_name:strname of the user to get authorization information foritem_list:objectitem list specifying which information to return
See OpenVMS System Services Reference Manual for SYS$GETUAI
returns
Status code
hiber()->int
Allows a process to make itself inactive but to remain known to the system so that it can be interrupted.
parameters
None
returns
Status code
schdwk(pid:int, pname:str, time:int)->list
Schedules the awakening (restart) of a process that has placed itself in the state of hibernation with the Hibernate service.
parameters
pid:intprocess identification (PID) of the process to be awakenedpname:strname of the process to be awakenedtime:inttime at which the process to be awakened
See OpenVMS System Services Reference Manual for SYS$SCHDWK
returns
The list:
intstatus code of the operationintpid
add_holder(id:int, holder:int, attrib:int)->int
Adds a specified holder record to a target identifier.
parameters
id:inttarget identifier granted to the specified holderholder:intholder identifier that is granted access to the target identifierattrib:intattributes to be placed in the holder record
See OpenVMS System Services Reference Manual for SYS$ADD_HOLDER
returns
Status code
rdb
- ↑ ile3new