Ralph Lange
7e7d230d8c
templates: fix warnings for xxxRecord.c in exampleApp
...
(fixes #1772833 )
2018-05-23 09:24:56 +02:00
Andrew Johnson
a732539eee
epicsMath.h defines 'finite()' not 'isfinite()'
2018-05-19 21:14:36 -05:00
Ralph Lange
3bc0805a89
rec: fix missing includes in longin/longout
2018-05-18 09:54:42 +02:00
Ralph Lange
c72e35c769
Merge Ralph's fix-1770292 branch into 3.14
2018-05-17 17:16:07 +02:00
Ralph Lange
2d9c5e99a1
db: correctly convert NaN alarm levels to integers
...
(fixes lp #1771298 )
2018-05-15 11:18:11 +02:00
Ralph Lange
ca22d50831
rec: consistent get_alarm_double() for longin/longout
...
(fixes lp #1770292 )
2018-05-15 11:18:10 +02:00
Andrew Johnson
5cb91d9f6d
Merge Ben Franksen's deadlock_warning branch into 3.14
2018-05-12 20:20:30 -05:00
Andrew Johnson
116c90c2ea
Reformatting, no code changes
2018-05-03 14:40:12 -05:00
Andrew Johnson
3f3696fb91
dbStatic: Prevent modifying a NAME field using a DB file
...
Fixes LP: #1597809
2018-05-03 14:28:44 -05:00
Benjamin Franksen
91ce807e8b
Fix for lp: #1751380
...
Add warnings about possible deadlock to the docs for ca_clear_channel,
ca_clear_subscription, and ca_context_destroy.
2018-04-11 12:58:28 +02:00
Andrew Johnson
b7d4609e57
Merge Bruce Hill's camonitor-server-relative-ts-bug-3.14 branch
2018-03-15 17:33:32 -05:00
Andrew Johnson
ceaff61c09
Pull in the podToHtml.pl script and rules from 3.15
...
This lets src/cap5 build with Perl installations that lack Perl's
podchecker and pod2html scripts (e.g. Fedora 27).
2018-03-14 14:12:12 -05:00
Bruce Hill
6cc623a7b4
Fixed camonitor server side relative timestamps bug
...
tsFirst needs to get initialized from the first server side
timestamp instead of the client side tsNow.
2018-03-08 01:40:11 -08:00
Andrew Johnson
ac4d5c95ac
Clean up some compiler warnings from clang
2018-02-09 10:56:52 -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
713c2d5080
Fix for lp: #1747091
...
generalTimeGetEvent()
2018-02-02 17:47:35 -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
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
5278799575
aSubRecord: Copy the right amount of data
...
Initialize OVLx from VALx with NEVx elements, size from FTVx
2017-11-15 20:59:06 -06:00
Michael Davidsaver
2af98c33c9
std/rec: aSub handle INAM changing outputs
...
Allow EFLG="On Change" to work with INAM.
2017-11-08 14:29:30 -06:00
Andrew Johnson
22debb3532
Fix for LP: #1702298
2017-09-25 15:41:31 -05:00
Andrew Johnson
fad89189da
Fix typo in CAref.html
2017-09-07 17:38:58 -05:00
Michael Davidsaver
5c8e5c52ef
rsrv: fix recv() error handling on WIN32
...
For WIN32 osiSockIoctl_t is unsigned, so
> osiSockIoctl_t nchars = recv(...
is casting signed -> unsigned which treats
errors as success.
2017-08-01 17:02:41 +02:00
Michael Davidsaver
546df1c1f0
rsrv: export CASDEBUG to iocsh
2017-08-01 17:02:41 +02:00
Michael Davidsaver
603331e7a5
rsrv: flush any queued messages before forced disconnect
...
Avoid loss of various ERROR messages which camessage()
has queued.
2017-08-01 16:44:48 +02:00
Michael Davidsaver
4b272cc0cf
rsrv: locking in cas_send_bs_msg()
...
Must lock around "pclient->send.stk = 0u;"
2017-08-01 16:44:48 +02:00
Michael Davidsaver
619a99bf99
rsrv: missing send lock around send_err()
2017-08-01 16:44:48 +02:00
Michael Davidsaver
1f8cb740f1
rsrv: drop un-commited VERSION message
...
This is a no-op as cas_commit_msg() isn't called.
A VERSION message is already queued during create_tcp_client().
2017-08-01 16:44:29 +02:00
Michael Davidsaver
322f7a97de
rsrv: add some comments
2017-08-01 16:44:29 +02:00
Michael Davidsaver
0fc770166c
rsrv: avoid possible overflow in vsend_err()
...
Accounting of message size doesn't take into account
space used by header of failed message (16 or 24 bytes).
This would allow a theoretical really long error message
to overflow the send buffer by 16 or 24 bytes.
2017-08-01 16:44:08 +02:00
Andrew Johnson
1a70855e25
Use static strings for epicsInterruptContextMessage()
...
The callbackRequest() routine was passing a stack-allocated
string to epicsInterruptContextMessage() but on RTEMS the
pointer is queued without copying the string. This fix uses
static strings for the 3 messages instead.
Fixes LP: #1705219
2017-07-24 11:19:20 -05:00
Andrew Johnson
6b5e7da4fd
catools: dbr_long_t is only 32 bits wide
...
Don't print it as a native long.
Fixes LP: #1699332
2017-06-20 15:49:41 -05:00
Andrew Johnson
2819d7ea3d
Posix epicsEventWaitWithTimeout() max delay
...
Limit timeouts on Posix to max-out at 10 years.
Adds a test that will fail when that time-out hits Y2038 on
systems where time_t is still a 32-bit integer.
2017-06-14 10:01:23 -05:00
Andrew Johnson
6ef995525a
Restore the use of DBL_MAX in timerQueue.cpp
2017-06-09 13:44:30 -05:00
Andrew Johnson
18dee384ec
Fix tv_sec casts to use time_t, not long
2017-06-09 12:20:16 -05:00
Andrew Johnson
b369aa67f1
Use 1000 years as 'forever' in timers
...
DBL_MAX causes problems...
2017-06-08 21:55:12 -05:00
Andrew Johnson
c853234e01
Remove artificial 60-minute timeout limit (Posix)
2017-06-08 09:53:07 -04:00
Andrew Johnson
9c859ffdca
Protect casStatsFetch() if called before rsrv_init()
...
Also ensures clientQ is initialized before creating clientQlock.
Fixes LP: #1694966
2017-06-01 15:37:34 -05:00
Andrew Johnson
b7b3dd2b37
Support for 'make junitfiles' target.
...
The Perl XML::Generator module must be installed to use this.
2017-05-18 16:31:43 -05:00
Xiaoqiang Wang
82396ee3ef
fix data size of gdd container type
...
getDataSizeElement of gdd container returns the number of sub fields.
It has to be called on the "value" field. This fix has already been done
in monitorReponse.
2017-05-10 10:22:13 -05:00
Michael Davidsaver
e430d097b7
ioc/rsrv: bounds check DBR
...
avoid array overrun when evaluating dbr_size_n() macro.
2017-05-03 16:49:28 -04:00
Michael Davidsaver
38be82a154
missing include
2017-05-02 18:22:57 -04:00
Michael Davidsaver
27cd9fd051
ioc/dbStatic: dbFreeBase() don't double free alias'd records
...
dbFreeBase() has been broken since alias() was introduced.
Traversal of recList in the function assumed that dbDeleteRecord()
remove only the current dbRecordNode. However, dbDeleteRecord()
called dbDeleteAliases() which removes alias dbRecordNode s.
If this happens (as it often does) to be the node immediately
after the real node, dbFreeBase() will then iterate using
a ellDelete()d node.
2017-05-02 18:04:06 -04:00
Michael Davidsaver
1ffce72a38
ioc/dbStatic: plug leak in dbFreeBase()
2017-05-02 18:02:05 -04:00
Michael Davidsaver
dcac64d50f
ioc/dbStatic: whitespace
2017-05-02 18:01:39 -04:00
Andrew Johnson
0bf789db4c
Fix indentation warning from GCC
2017-04-28 14:56:18 -05:00
Michael Davidsaver
57cbe61709
libCom/test: errlog test more verbose
2017-04-27 16:53:40 -04:00
Michael Davidsaver
a2ab17a782
libCom: STATIC_ASSERT use c++11 static_assert when possible
2017-04-27 16:52:33 -04:00
Andrew Johnson
d825f87359
Check for empty PV names in Perl catools
2017-04-27 12:10:27 -05:00
Andrew Johnson
f2e54be965
catools: Fix SEGFAULT from bad PV names
2017-04-27 10:52:07 -05:00