Commit Graph

14984 Commits

Author SHA1 Message Date
Andrew Johnson
f2ceb3bbbf dbJLink: Add jlif result enum state name strings 2018-06-01 23:26:53 -05:00
Andrew Johnson
fd30989f63 Add jlif::start_child() method 2018-06-01 23:23:54 -05:00
Andrew Johnson
3b89515664 dbJLink: Pass the correct dbfType to child links
API change for link types that support child links, they must now
indicate whether a child link is an input, output or forward link
by the return value from their parse_start_map() method. The original
jlif_key_child_link enumeration has been replaced by 3 new values:
jlif_key_child_inlink, jlif_key_child_outlink and jlif_key_child_fwdlink

Previously we were passing the dbfType of the record link field to all
child links within it, which was wrong.
2018-05-14 23:43:13 -05:00
Andrew Johnson
877d38e79a Added Doxygen annotations for the Link Support API
Haven't actually tried processing them yet though.
2018-05-02 00:06:12 -05:00
Andrew Johnson
7cef334b64 Added C++ extern "C" wrapper to dbState.h 2018-04-25 21:42:44 -05:00
Andrew Johnson
c2c32e5876 lnkState: Mark as non-volatile, remove lset::isConnected() method 2018-03-31 15:48:58 +01:00
Andrew Johnson
ca2003bb63 dbLink: Clarify meaning of lset isConstant and isVolatile flags
Modify dbIsLinkConnected() to check lset->isVolatile first.
2018-03-31 15:42:35 +01:00
Andrew Johnson
97ea68d40c Added DBF_OUTLINK support to lnkCalc
New out key specifying a child link to put the calculated result to.
2018-03-09 22:42:59 -06:00
Andrew Johnson
8f64af96fd Remove final traces of link debug info tags 2018-03-05 21:41:03 -06:00
Andrew Johnson
54c47f02de Export dbJLinkDebug as a shell variable 2018-03-05 21:34:03 -06:00
Andrew Johnson
d87ac0319b Replace the base:jlinkDebug info-item with a global variable
The info item only works in dbPutString() which means dbLoadRecords()
but not dbPutField().
2018-03-05 21:34:03 -06:00
Andrew Johnson
20404003bf More timestamp support for lnkCalc
Link now remembers the last timestamp read if a timestamp input
was nominated, and implements getTimestamp() to return this.
Also displays the timestamp value in the report output.
2018-03-05 20:55:57 -06:00
Andrew Johnson
1fa5d9d3b6 Cleanup warnings in lnkConst.c 2018-03-05 20:55:57 -06:00
Andrew Johnson
5e394e4928 dbJLink: Handle NULL returned by jlif::alloc() better
It might not mean out-of-memory, adjust error message.
Add OOM and dbfType error checks to all jlif::alloc() routines.

Change all IFDEBUG() in JLink types to use exported global variables.
This allows debug messages to be output from the jlif::alloc()
routines, since the jlink field isn't set when they're called.
2018-03-05 20:55:57 -06:00
Andrew Johnson
c0d4835e66 lnkState: Add support for inverting the flag data
Determine the truthiness of put data in its original data type.
Adjust the link documentation to cover these changes.
2018-03-05 20:55:56 -06:00
Andrew Johnson
8ae34ba01d Add a "state" link type using the dbState API
Includes documentation in links.dbd.pod
2018-03-05 20:55:56 -06:00
Andrew Johnson
98f656fc96 Remove duplicate variables from lnkCalc.c 2018-03-05 20:55:56 -06:00
Andrew Johnson
1458f8640e Merge 3.15 into 3.16 2018-03-04 15:58:26 -06:00
Andrew Johnson
a9764c8f62 tools/caput: Report errors from ca_array_put*()
Fixes LP: #1747983
2018-03-04 15:51:39 -06:00
Andrew Johnson
98d9ea4545 ca/client: Catch by reference, missing '&' 2018-03-04 15:45:15 -06:00
Andrew Johnson
8eb4eec7d2 Corrected fix from Bruce Hill's Github PR#19 2018-03-03 17:17:34 -06:00
Andrew Johnson
98930eebc4 strcpy() -> strncpy() changes from Bruce Hill
Also added some additional static assertions for string field sizes.
2018-03-03 00:12:59 -06:00
Andrew Johnson
292141458c Merge 3.15 branch into 3.16 2018-02-24 21:35:01 -06:00
Andrew Johnson
c18b6f2ccf Deny use of dbgf, dbpf, dbtr, dbtgf and dbtpf before iocInit
Can't use locking dbAccess routines until lock-sets have been calculated.
Fixes LP: #1725248
2018-02-24 20:15:08 -06:00
Andrew Johnson
e41f8bf518 Translate and escape chars in info tag strings
Fixes LP: #1716998
2018-02-24 19:11:54 -06:00
Andrew Johnson
ae548d3400 Remove cantProceed() from dbGetLink() and dbPutLink()
Fixes LP: #1528314
Affects 3.15 branch only.
2018-02-24 17:40:45 -06:00
Andrew Johnson
85c6e9bdfb Merge clang fixes from 3.15 into 3.16 2018-02-09 11:35:55 -06:00
Andrew Johnson
550beeab9f More clang warning clean-ups
The short => int change is a UB issue, the second argument to va_start()
must be of a type that does not undergo promotion. See
https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP58-CPP.+Pass+an+object+of+the+correct+type+to+va_start
2018-02-09 11:29:16 -06:00
Andrew Johnson
bf91275200 Merge clang fixes from 3.14 into 3.15 2018-02-09 11:16:26 -06:00
Andrew Johnson
ac4d5c95ac Clean up some compiler warnings from clang 2018-02-09 10:56:52 -06:00
Andrew Johnson
cd8fd8a08f Merge 3.15 into 3.16 2018-02-05 12:06:37 -06:00
Andrew Johnson
61296b8cff Merge 3.14 into 3.15
Fix for LP: #1743076
2018-02-05 12:03:28 -06:00
Andrew Johnson
de442e9584 Fix for LP: #1743076
Never zero the CA client context private ID.
2018-02-05 12:02:13 -06:00
Andrew Johnson
ac367398b3 Merge fix for lp: #1747091 from 3.14 into 3.15 2018-02-02 17:49:00 -06:00
Andrew Johnson
713c2d5080 Fix for lp: #1747091
generalTimeGetEvent()
2018-02-02 17:47:35 -06:00
Andrew Johnson
eef6f3afbb Merge 3.15 branch into 3.16 2018-02-01 15:05:44 -06:00
Andrew Johnson
af07016464 Merge 3.14 branch into 3.15
Actually a different fix to Michael's 3.14 commit due to divergent code.
2018-02-01 14:20:47 -06:00
Michael Davidsaver
734d16291f rsrv: buffer for IP too small
An IPv4 address and port number
has 21 characters max.
2018-02-01 09:42:51 -08:00
Andrew Johnson
f1e5e9689b Merge 3.14 branch into 3.15 2018-02-01 11:23:29 -06:00
Andrew Johnson
1454f42a27 Config fix for parallel builds with MSVC 2015 and later
From Mark Rivers and Freddie Akeroyd.
2018-02-01 11:19:08 -06:00
Andrew Johnson
506be838af Merge 3.15 into 3.16 2018-01-21 00:45:38 -06:00
Andrew Johnson
ddbdcf9462 rec/test: Add missing filename to DBDDEPENDS_FILES 2018-01-21 00:44:10 -06:00
Andrew Johnson
729e6fda4d tools: Add some context to the 'Undefined macro' warning
Mark Rivers saw this warning when he forgot to configure and build a
dependent module properly. The additional information given by this
change would have helped him track down the problem faster.
2018-01-19 13:14:13 -06:00
Andrew Johnson
0315e90e6e Revert "tools: Use Carp"
This reverts commit f207b00b05.

None of these warn/die messages request a stack dump since they all
end with \n, but carp & croak ignore that.
2018-01-19 11:06:23 -06:00
Andrew Johnson
00f30ac53a Merge URL updates from 3.15 branch into 3.16 2018-01-18 23:52:18 -06:00
Andrew Johnson
66c6aaa44f Merge URL updates from 3.14 branch into 3.15 2018-01-18 23:46:42 -06:00
Andrew Johnson
c830a3a4ee Updated links to new EPICS website at Argonne
Only done for documents that are still present in EPICS 7.
2018-01-18 23:35:09 -06:00
Andrew Johnson
1daab5fb35 Add soft-channel tests for local dbCa links, both input and output
Update test descriptions.
Renamed records to match their group number.
103 more tests, but some could fail on a busy system...
2018-01-18 23:16:42 -06:00
Andrew Johnson
f5cd555383 Describe recent 3.16-only fixes in Release Notes
Preparing for Base-3.16.2 at some point.
2018-01-08 16:53:11 -06:00
Andrew Johnson
f527e5939e Cleanup epicsReadline.c
No real code changes, just reformatting and variable renames.
2018-01-08 11:58:20 -06:00