Commit Graph

530 Commits

Author SHA1 Message Date
79624b72e5 extend calc, calcout and sub records and calc expressions to inputs A - U
To accomodate for the increased number of inputs, the size of CALC and OCAL
fields has been doubled to 160 characters.
2025-08-13 09:47:40 -05:00
007df69726 fix EPICS_PRINTF_STYLE so old mingw recognizes %ll and %z (#674)
gcc knows __gnu_printf__ since version 4.4.0, not only for MinGW but for
all targets. As we would need to check the gcc version anyway to avoid
"unrecognized format function type" errors with older MinGW versions,
we can simply use it for recent gcc versions and not depend on MinGW at all.
2025-07-30 10:23:19 -05:00
Michael Davidsaver
5ae9cc6536 gethostbyname -> getaddrinfo
Prefer reentrant DNS API
2025-07-30 10:16:23 -05:00
Jerzy Jamroz
f4e1019ebe fix: ts{} {} warning: missing initializer for members
- warning: missing initializer for member ‘epicsTimeStamp::secPastEpoch’ [-Wmissing-field-initializers]
- warning: missing initializer for member ‘epicsTimeStamp::nsec’ [-Wmissing-field-initializers]
2025-07-21 10:23:12 -05:00
Andrew Johnson
dc776b547a Update CALC expression documentation
Doxygen changes in postfix.h mostly formatting & adding tags.
Rec-ref changes regrouped the operators to match the order in
postfix.h, formatting, and added some missing operators.

Updated description of calcout.OEVT for named events.
2025-07-16 10:25:46 -05:00
Michael Davidsaver
7236f3ad5f macLib: add emphasis when expansion finds an undefined macro 2025-07-07 16:45:44 -07:00
Hinko Kocevar
e294bb443c 2nd attempt to fix a linter error for step 49 of "Path" 2025-06-20 16:01:44 -05:00
Hinko Kocevar
5813dcd639 attempt to fix a linter error for step 49 of "Path" 2025-06-20 16:01:44 -05:00
Hinko Kocevar
b8e70783d8 trying to fix vs2012 and vs2010 builds 2025-06-20 16:01:44 -05:00
Hinko Kocevar
87b8050437 handle backslash for EPICS command line library (similar to READLINE) 2025-06-20 16:01:44 -05:00
Hinko Kocevar
b9b2da26fd detect and handle backslash as part of multi-line string 2025-06-20 16:01:44 -05:00
Jerzy Jamroz
70d5df05c7 refactor: atInit changed to afterIocRunning 2025-06-20 15:42:47 -05:00
Jerzy Jamroz
6683d81eb9 fix: strlen instead of strnlen. 2025-06-20 15:42:47 -05:00
Jerzy Jamroz
d87ad35d37 feat: atInit presents its commands in the green colour. 2025-06-20 15:42:47 -05:00
Jerzy Jamroz
a9b66218c6 refactor: const adjustment. 2025-06-20 15:42:47 -05:00
Jerzy Jamroz
4cf7077ee2 fix: Copyright update. 2025-06-20 15:42:47 -05:00
Jerzy Jamroz
71e86e51bd fix: error C2059: syntax error at the atInitDef structure. 2025-06-20 15:42:47 -05:00
Jerzy Jamroz
43003ea18a fix: (CWE-126) CodeQL removal. 2025-06-20 15:42:47 -05:00
Jerzy Jamroz
61deabd787 fix: CMP=vs2012 (error C2143) variables to the top of a function. 2025-06-20 15:42:47 -05:00
Jerzy Jamroz
3ece668f6b refactor: strncpy to memcpy; malloc with the identifier. 2025-06-20 15:42:47 -05:00
Jerzy Jamroz
d7a02342e5 fix: CodeQL check failure.
Possibly wrong buffer size in string copy (Critical)
2025-06-20 15:42:47 -05:00
Jerzy Jamroz
ecd76e5b5b fix: Portability update. 2025-06-20 15:42:47 -05:00
Jerzy Jamroz
9b92a98d06 fix: ELLLIST initialization with ELLLIST_INIT. 2025-06-20 15:42:47 -05:00
Jerzy Jamroz
16fd65639a refactor: initHookRegister moved to atInitRegister; strlcpy -> strncpy
portability.
2025-06-20 15:42:47 -05:00
Jerzy Jamroz
f3e24ea8e3 fix: mallocMustSucceed makes this check unnecessary. 2025-06-20 15:42:47 -05:00
Jerzy Jamroz
dd09670b35 refactor: initHookRegister wihout the failure check. 2025-06-20 15:42:47 -05:00
Jerzy Jamroz
04c7cdd33a fix: Removal of unnecessary item->cmd NULL check. 2025-06-20 15:42:47 -05:00
Jerzy Jamroz
3a822ccb0c refactor: EPICS license adjustment. 2025-06-20 15:42:47 -05:00
Jerzy Jamroz
45b2be0171 refactor: Extra blank space after #include-s. 2025-06-20 15:42:47 -05:00
Jerzy Jamroz
1468319f31 refactor: Format change
* 4 space indentation
* epicsStdoutPrintf to printf
2025-06-20 15:42:47 -05:00
Jerzy Jamroz
82994d600f perf: Extra safety with strlen(cmd). 2025-06-20 15:42:47 -05:00
Jerzy Jamroz
8752372af1 build: atInit module moved to libcom. 2025-06-20 15:42:47 -05:00
72ca94e04c cleanup coding style in fdManager 2025-06-04 12:43:27 -05:00
3de1d93059 fdManager: filter poll flags for Window's sake 2025-06-04 12:43:27 -05:00
8855d15a3b make fdManagerPrivate::fdReg volatile to avoid codacy warning 2025-06-04 12:43:27 -05:00
87bb7d430f use smart pointers in fdManager 2025-06-04 12:43:27 -05:00
3963b35c17 fix codacy warning: make fdManagerPrivate constructor explicit 2025-06-04 12:43:27 -05:00
ec5badc737 fdManager uses poll() on Darwin too 2025-06-04 12:43:27 -05:00
ca48a217a5 Keep implementation details of fdManager out of header file 2025-06-04 12:43:27 -05:00
27db57d386 fdManager use std::vector 2025-06-04 12:43:27 -05:00
02d25c3c48 fdManager uses poll() on Windows and RTEMS too
RTEMS needs to use the "new" network stack
Windows has poll since Vista
Don't use poll on cygwin: it emulates poll() using select().
2025-06-04 12:43:27 -05:00
4d63e65b9d fdManager changed to use poll()
The implementation using select() limits file desciptors to FD_SETSIZE,
typically 1024 on Linux. This number is too low for some applications,
for example for the CA gateway.
Therefore, Linux builds use poll() instead.
2025-06-04 12:43:27 -05:00
ea402b0f73 fix for architectures where sizeof(void*) > sizeof(long), i.e. windows-x64 2025-06-04 10:14:59 -05:00
Érico Nogueira
21368dc7b4 Don't include linux/ header in osdSockUnsentCount.
Per the manpage in the file's comment, SIOCOUTQ is equivalent to the
TIOCOUTQ ioctl, whose value can be obtained by including <sys/ioctl.h>,
which allows us to avoid including any system-specific headers. This is
desirable so that, on a musl system, it won't be necessary to install
kernel headers in order to build epics-base.

Since it's first been checked into Git, the Linux kernel has defined
SIOCOUTQ to be TIOCOUTQ [1].

From the three main libc options on Linux: glibc and uclibc use the
kernel headers, so both ioctls are available; and musl defines only
TIOCOUTQ in their own headers.

[1] 1da177e4c3
2025-06-04 09:55:04 -05:00
Andrew Johnson
0f6fd8fff7 Improve 'help' self-description message 2025-06-04 09:52:44 -05:00
Andrew Johnson
42e7cbc71d Add color to the softIoc verbose output 2025-06-04 09:52:44 -05:00
Andrew Johnson
c0da3dd1f9 Make default iocsh prompt green
The bldEnvData.pl script now syntax-checks the envParam
default values, allowing ANSI color macros to be used
in the IOCSH_PS1 parameter.
2025-06-04 09:52:44 -05:00
Andrew Johnson
55d918e74c Add more colour to iocsh output messages
Includes some unification of error text, narrower wrap margin.
'var' output now lists the variable types.
2025-06-04 09:52:44 -05:00
b833f12129 fix epicsStrtod for 32 bit architectures 2025-04-23 09:25:17 -05:00
Michael Davidsaver
f827bd7e34 true is C23 keyword 2025-04-15 16:10:34 -07:00