Commit Graph

17105 Commits

Author SHA1 Message Date
Andrew Johnson 0301e60629 Expanded on Oksana's annotations 2022-09-05 21:58:34 -05:00
Oksana Ivashkevych 759a737983 moved code tags to exclude comments, as suggested 2022-09-05 21:58:34 -05:00
Oksana Ivashkevych eeddf54b84 in file initHooks.h changed brief sytax to make comment appear next to the field, used \code {.cpp} as suggested for the example 2022-09-05 21:58:34 -05:00
Oksana Ivashkevych 6f6ab3b758 codeathon 2022 Added doxygen formatting to initHooks.h 2022-09-05 21:58:34 -05:00
Oksana Ivashkevych 59d16c56a1 codeathon 2022. Added missing comments with \brief, updated other notation for consistency 2022-09-05 21:58:34 -05:00
Oksana Ivashkevych 58edb984c9 codeathone 2022, added doxygen syntax to all comments in dbChannel.h 2022-09-05 21:58:34 -05:00
Oksana Ivashkevych eb3207ee21 Codeathon 2022 Header annotations project dbChannel.h 2022-09-05 21:58:34 -05:00
Andrew Johnson 098ee6c063 Oops: Fix to RULES_MODULES 2022-09-03 10:59:26 -05:00
Andrew Johnson 54c02e2c24 Fix for GitHub issue #293
Ensure local build targets are up to date before running tests.
2022-09-03 10:47:58 -05:00
Andrew Johnson efc7cbaf7f Build system fixes related to INSTALL_LOCATION
* The build can't descend into external submodules when there is no
configure/RULES_TOP file present in $(INSTALL_LOCATION).
* Recreate modules/RELEASE.<host>.local if configure/CONFIG_SITE or
configure/CONFIG_SITE.local have changed.
* Move the distclean of modules/RELEASE.<host>.local to RULES_TOP
* Several comment and white-space changes
2022-09-03 10:47:58 -05:00
Andrew Johnson ede35aa152 Add .gitignore files to the makeBase{App,Ext} templates 2022-09-03 10:47:58 -05:00
Torsten Bögershausen a8e8d22c31 iocinf.cpp: Hostnames may be longer than 32 bytes
Found here at ESS:

(all in one line)
EPICS_CA_ADDR_LIST=averylonghostname.mylabnetwork.technicalnetwork.example.com
EPICS_CA_AUTO_ADDR_LIST=NO
caget somePVnam

leads to something like this:
CA.Client.Exception...............................................
    Warning: "Empty PV search address list"
    Source File: ../udpiiu.cpp line 403
    Current Time: Thu Jun 09 2022 10:10:47.804161447

Problem desription:
addAddrToChannelAccessAddressList() will collect what ever we specify in
EPICS_CA_ADDR_LIST for channel access.
That function will add IP-addresses to the search list.
hostnames are possible, but are ignored if longer than 32 bytes,
because buf is too short.

If a hostname can be resolved into an IP, that is fine,
if not that is "fine as well" (better say: silently ignored):
If, and only if, EPICS_CA_AUTO_ADDR_LIST=NO is given then the one
and only too long hostname will be ignored and lead to an
"Empty PV search address list".

If EPICS_CA_AUTO_ADDR_LIST=YES (or nothing) is specified, the search list
is not empty, and EPICS will search all broadcast addresses.
This will eventually lead into a timout.

Solution:
Increase the buf size in addAddrToChannelAccessAddressList() from 32 to 256

The maximum length for a hostname is 255:
https://www.ietf.org/rfc/rfc1034.txt

If we add one byte for the string terminating '\0', we need 256 bytes.

And yes, this patch neglets the fact that a user can specify HOSTNAME:PORT,
which may need another 6 bytes. To put it the other way around:
In this case the hostname length is limited to 250 bytes,
which is still long enough in practice.
2022-09-02 18:28:34 -07:00
zimoch c2df1c6fe5 string waveform init test added 2022-09-02 08:33:32 -07:00
zimoch c5a7548526 eliminated unnecessary code 2022-09-02 08:33:32 -07:00
zimoch dc70dfd625 escape non-printable chars in dbgf output of CHAR arrays 2022-09-02 08:33:32 -07:00
zimoch 20e20cbf2b improved JSON parser error messages 2022-09-02 08:33:32 -07:00
zimoch 2e44ca586f using the same error printing function consistently 2022-09-02 08:33:32 -07:00
zimoch c9619d013a printing some context 2022-09-02 08:33:32 -07:00
zimoch ec650e8c3f allow empty array input links 2022-09-02 08:33:32 -07:00
Michael Davidsaver d47fa4caa4 fix aSub with constant input links 2022-09-02 08:09:51 -07:00
Michael Davidsaver f0369058bb dbReadCOM missing newline in error 2022-09-02 08:08:27 -07:00
Andrew Johnson df96c0170a Minor changes to makeBaseApp templates 2022-08-30 14:06:30 -05:00
Andrew Johnson a411a19b2a Updates to makeBaseExt templates
Removed RULES_PYTHON (swig and Python 2.2!)
Removed CONFIG_SITE files for cygwin, solaris & darwin-ppc & ppcx86
Added CONFIG_SITE files for linux-aarch64 and darwin-aarch64
Removed pointers to many ancient packages
2022-08-30 14:05:15 -05:00
Andrew Johnson c0db7a0beb Fix ECHO, QUIET_FLAG and QUESTION_FLAG 2022-08-26 15:22:30 -05:00
Andrew Johnson 52dfb89741 PRINT.var targets work under make -q 2022-08-26 12:32:04 -05:00
Andrew Johnson b652e8230a Improve expandVars.pl debug output 2022-08-26 12:16:09 -05:00
Andrew Johnson 0efffc1bcb expandVars.pl now only writes output when it changes 2022-08-26 12:12:14 -05:00
Andrew Johnson d7030ae8a5 Adjust for Perls without \N in regex. 2022-08-23 15:15:41 -05:00
Andrew Johnson 24f30ede22 Portability: Don't use bash/shell operations 2022-08-23 13:35:40 -05:00
Andrew Johnson 04ee3f2888 hg and svn have been tested 2022-08-23 13:07:06 -05:00
Andrew Johnson a373327b59 Get revision date from Darcs 2022-08-23 13:06:44 -05:00
Andrew Johnson 1fa98d489f Merge Pierrick's VersionHeaderDate branch into 7.0 2022-08-23 11:54:07 -05:00
Andrew Johnson 5cef60a3e4 Clear unused var warning 2022-08-21 16:51:17 -05:00
Andrew Johnson 20fb6b9ef5 Merge 3.15 changes into 7.0 2022-08-21 16:44:38 -05:00
Andrew Johnson a249561677 Added darwin-aarch64 support from 7.0 branch 2022-08-21 16:17:29 -05:00
Andrew Johnson 96887926bf Merge Freddie's set_thread_descriptions branch
PR #270
2022-08-21 16:01:51 -05:00
Andrew Johnson c8647ffab7 Added Release Note 2022-08-21 16:00:30 -05:00
Michael Davidsaver e28c914966 dbDumpRecordType show field offset/size 2022-08-20 13:53:03 -07:00
Michael Davidsaver f086be93a9 add OPT_LDFLAGS and pass -g when linking 2022-08-20 13:53:03 -07:00
Michael Davidsaver 6feaaebd75 test epicsStrtok_r 2022-08-20 11:47:41 -07:00
Andrew Johnson 5d92d406a1 Darwin: Resolve soft-links in epicsGetExecName() 2022-08-18 12:17:06 -05:00
Andrew Johnson ad1a13730a Remove unused var 2022-08-16 15:08:23 -05:00
Andrew Johnson a24a84c315 Replace errPrintf() in recGbl.c 2022-08-16 15:07:49 -05:00
Andrew Johnson 6e7a715380 Getting .DTYP from rectype with no devSup now returns '' 2022-08-16 13:33:11 -05:00
Andrew Johnson b88b35d117 Enhancements to the capr.pl script 2022-08-16 11:58:35 -05:00
Andrew Johnson 0a20825c6e NTPTimeSync: Show when NTP sync failed, recovered 2022-08-15 19:12:05 -05:00
Michael Davidsaver 424d678abf linkTest_registerRecordDeviceDriver() fix return type 2022-07-29 07:45:23 -07:00
Andrew Johnson 007279cf29 Release notes updated 2022-07-28 13:25:14 -07:00
Andrew Johnson 752ca97f7e VxWorks: Stop VxWorks clock sync if EPICS_TS_FORCE_NTPTIME
Use ipcom_ipd_kill() to do it properly, announce when doing it.
Suspending the ipsntps task is dangerous, can hang the OS so
don't try to kill it if user already suspended the task.
Also drops checks for the "ipntpd" thread, not used.
2022-07-28 13:11:59 -07:00
Andrew Johnson bf0b4d2f61 VxWorks: Re-run tz2timezone() whenever the year increases
In the event that it then goes backwards we won't run it again; that
should never happen, but if it did we should prefer stability!
2022-07-28 13:11:59 -07:00