Unclear: Precedences when setting the server beacon address list
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
EPICS Base |
Fix Released
|
Medium
|
Ralph Lange |
Bug Description
The precedence of different environment variables when building the CA server beacon address list is unclear (at least to me). The doc describes a scheme which I believe is not desireable. I'm not 100% sure what the code really does - it looks like an even different way to me. Please check and straighten things out.
Additional information:
The CA Reference Manual describes:
- If EPICS_CAS_
- If EPICS_CA_ADDR_LIST is defined and EPICS_CAS_
- Else the list is not augmented.
But for applications that are servers as well as clients (e.g the Gateway), the usual case would be both EPICS_CAS_
Shouldn't the algorithm be:
- If EPICS_CAS_
- If EPICS_CAS_
- If EPICS_CA_ADDR_LIST is defined, it is used.
- Else the list is not augmented.
OS: any
Platform: any
Version: R3.14.5
Original Mantis Bug: mantis-73
http://
Currently, the doc reads as follows:
CA servers build a list of addresses to send beacons to during initialization. If EPICS_CAS_ AUTO_BEACON_ ADDR_LIST has the value "YES" then the beacon address list will contain at least the broadcast address of all LAN interfaces found in the host and the destination address of all point-to-point interfaces found in the host.
If EPICS_CAS_ BEACON_ ADDR_LIST is defined then its contents will be used to augment this list. Individual entries in EPICS_CAS_ BEACON_ ADDR_LIST may override the destination port number if ":nnn" follows the host name or IP address there. Alternatively, if EPICS_CAS_ BEACON_ ADDR_LIST is not defined, EPICS_CA_ADDR_LIST is defined, and EPICS_CAS_ INTF_ADDR_ LIST is not defined, then the contents of EPICS_CA_ADDR_LIST will be used to augment the list. Otherwise, the list is not augmented.