Commit Graph

80 Commits

Author SHA1 Message Date
Mrockwell2
c007cfc88a
Fixed error message for sims with the same port number (#1776)
* Fixed error message for same port number

* Fixed return values
2024-09-26 11:47:45 -05:00
Hong Chen
077064f225
Fixed one warning message at shutdown after checkpoint load and kept the current multicast group after checkpoint load. (#1784)
* Added a check before calling MM delete_var in ExternalApplication destructor;
Made sure that the MulticastGroup is not initialized before initializing it in VariableServerListenThread.cpp;

* Updated to call multicast group initialization to be consistent for the unit test.

* Removed unnecessary command c str pointer.

* Removed unnecessary command c str pointer.
2024-09-26 11:17:57 -05:00
jmpenn
5065d96a15
Pre-increment (rather than post-increment) STL iterators in for loops… (#1692)
* Pre-increment (rather than post-increment) STL iterators in for loops. #1594

* Fix a goof. #1594
2024-04-18 11:41:35 -05:00
jmpenn
c4e60d9f9a
Proposed fix for deadlock on shutdown (#1673)
* Proposed fix for deadlock on shutdown

* Terminate C style comment.

* Added needed libs for applicable tests and updated the logic for when allowing/disallowing connections.

* Need to load additional trick libs for applicable tests for Linux.

---------

Co-authored-by: Hong Chen <hong.chen-1@nasa.gov>
2024-03-28 15:15:19 -05:00
jmpenn
fd260bfc34
In DPV_textbuffer.cpp, close the opened file on read failure, so we d… (#1572)
* In DPV_textbuffer.cpp, close the opened file on read failure, so we don't have a resource leak. #1561

* Disable 2 tests in VariableServerSessionThread_test.cc: exit_if_handle_message_fails, and exit_if_write_fails.
2023-09-21 10:15:53 -05:00
mcmuffin6o
3fb82f9d84
Add return codes to var_set (#1543) 2023-08-14 09:32:04 -05:00
Jacqueline Deans
682f218391
Correct typo in VariableServerSession_write_data.cpp
Thanks to @Fjolnirr for pointing this out!
2023-07-13 13:49:42 -05:00
Jacqueline Deans
d3cc021cca Move VariableServerSession logs into subdirectory; make separate toggle for session logs 2023-06-26 12:23:58 -05:00
Deans
a4d49850f3 Add per-session variable server logs 2023-06-26 12:23:58 -05:00
Deans
99ee88a686 Add more Variable Server unit and integration tests, clean up and clarify naming 2023-06-26 12:23:58 -05:00
Jacqueline Deans
0788dcfa9b Replace TrickComm with new connection_handler library 2023-06-26 12:23:58 -05:00
Jacqueline Deans
c2e42f4ef4 Refactor and test Variable Server.
- Split VariableServerThread into VariableServerSession and VariableReference classes
- Use C++ streams for data handling
- Unit tests
2023-06-26 12:23:58 -05:00
Alex Lin
ad42376d5e
Variable Server byteswapping crashes the sim #1513 (#1514)
* Variable Server byteswapping crashes the sim #1513

The code to byteswap a variable server buffer has a comment saying there is a bug. The comment is
correct.  The original code would swap the parameter and anything else that followed that parameter
in the structure.  Crashes everywhere.  Created a new routine that byteswaps a single parameter.
Strangely we didn't have such a routine until now.  Did some testing of doubles, floats, ints,
shorts, and chars and all were swapped correctly.

* Variable Server byteswapping crashes the sim #1513

enabling binary byteswap test.
2023-06-01 13:20:14 -05:00
Jacqueline Deans
d76de7e1ee
Allow for read only S_sie.resource (#1420) 2023-04-17 17:23:48 -05:00
Jacqueline Deans
5f6a5de070
Expand SIM_test_varserver (#1459)
* Add tests for alternate ways to open VS port

* Don't connect to varserv when quiet=true in trickops

* Add print to try to help debug hanging trickops test

* Handle multicast connect failures gracefully

* Multicast is disabled by default on mac

* Forgot an important return value

* Take away retries

* Fix issue with restart test

* Revert trickops debugging changes

* Remove debugging accidentally left in [no ci]

* whoops

* Allow retries

* Update trickops.py

* sim test adjustments

* Add docs [no ci]

* wording [no ci]

* Cleanup

* Remove large messages, test that one in unit tests
2023-02-24 14:44:55 -06:00
Jacqueline Deans
9c7becb4ff
Handle thread shutdown gracefully and test (#1448)
---------

Co-authored-by: Dan Jordan <daniel.d.jordan@nasa.gov>
2023-02-08 17:58:59 -06:00
Jacqueline Deans
fb25ea70d2
Fix undefined behavior in vs_format_ascii (#1446) 2023-02-07 13:11:51 -06:00
Jacqueline Deans
86b0bc9d39
Fix undefined behavior in vs_format_ascii (#1409) 2022-11-29 16:29:54 -06:00
jmpenn
2a03ff5cf4
Replace sprintf with snprintf in all of Trick source. #1384 (#1392)
* Replace sprintf with snprintf in all of Trick source. #1384

* Don't add -Werror for MacOS because of deprecated sprintf warnings which we cant get rid of because SWIG. #1384

* Fixed an unbalanced parenthesis in S_overrides.mk. #1384
2022-11-15 15:00:05 -06:00
Jacqueline Deans
9c8799610f
Variable Server - var_send_once and integration test (#1330)
* Adds the send_once command and message type, which allows a user to request a variable to be sent immediately and only once (intended to replace the var_add, var_send, var_clear idiom that is commonly used for this purpose)
* Minor refactoring of variable server internals to reduce repeated code
* Adds SIM_test_varserv to integration test to test basic variable server functionality
* Changes graphics client for SIM_billiards to use var_send_once as an example of intended use
* Add documentation for var_send_once in docs and tutorial
* Set exit_code_enabled in trick unit tests to be true by default
* Patch for failing bookworm build
2022-08-18 10:47:07 -05:00
Derek Bankieris
8fcd83e5e1 Omit cv_convert_double for trivial conversions
Refs #982
2022-07-08 12:32:43 -05:00
Scott Fennell
878b895588 #1260 change get_user_tag_ref to const because its the right thing to do 2022-05-17 12:08:13 -05:00
Scott Fennell
3bece7f73e
#1260 access c_str of reference not temporary value for var_server_get_user_tag (#1264)
closes #1260
2022-05-17 11:42:08 -05:00
Scott Fennell
d6d7301d77
#1215 add a warning when var_set can't find ref_attribute for variable name (variable doesn't exist) (#1216)
Co-authored-by: Fennell, Scott P 263712616 <scott.p.fennell@nasa.gov>
closes #1215
2022-01-18 11:40:59 -06:00
Penn, John M 047828115
e487e5609f Initial excision of DMTCP from Trick. #28 2021-08-27 19:38:56 -05:00
Scott Fennell
acdc60050c
change c_intf ref_attributes param to const char ptr, remove casts from calls to function in trick (#1135)
closes #1129 

Co-authored-by: Fennell, Scott P 263712616 <scott.p.fennell@nasa.gov>
2021-05-26 22:12:02 -05:00
Scott Fennell
d75faecff8
add missing lock/unlock on pthread map mutex to VariableServer::shutdown fixes #1133 (#1134)
closes #1133
2021-04-26 23:28:26 -05:00
Scott Fennell
939b3002d1
tv dynamic allocations post initialization and test update (#1090)
* #1086 append runtime allocations when sie is requested instead of initialization

* #1088 change sie error to warning and improve warning message

* #1089 lowercase powertools in centOS 8 config


closes #1086
closes #1088
closes #1089
2020-12-15 12:48:21 -06:00
Scott Fennell
f825dc00fc
Merge test branch into master (#1047)
* #1041 filter -W workaround for ICG linking to LLVM 10 libclang-cpp.so (#1044)

* 1043 drg checkpoint memory leak (#1045)

* #1043 drg fix drg checkpoint memory leak

* 947 sie generation rework (#1046)

generate  S_sie.resource at during build instead of runtime
2020-09-01 15:55:19 -05:00
Scott Fennell
c8eb44e1fc get rid of dangling pointer use closes #878 2019-10-04 10:04:38 -05:00
Penn, John M 047828115
ba4c86858a Remove unused variable definition. 2019-08-13 16:32:21 -05:00
Derek Bankieris
d135353c90 Infer TRICK_HOME in Makefiles
Closes #358
2019-06-21 13:15:22 -05:00
jmpenn
3f35388b49
Change std::endl to linefeed as appropriate. (#773)
* Fix endl issue in variable server JSON generation. Ref #766

* Change std::endl to line feed as appropraite. #766

* Change std::endl to line feed in MemoryManager as appropriate. #766

* Change std::endl to linefeed as appropriate. #766

* Change std::endl to line feed as appropriate in JSONVariableServer. #766

* Change std::endl to line feed as appropriate in still more files. #766
2019-05-13 16:05:01 -05:00
Penn, John M 047828115
be4372a831 Change dashes in JSON identifiers to underscores. ref #678 2019-03-07 10:44:56 -06:00
Penn, John M 047828115
531a94173e Fix output going to the wrong stream. ref #678 2019-03-07 10:43:40 -06:00
jmpenn
b9278c4a72
Add capability to list current variable server connections in JSON re… (#732)
* Add capability to list current variable server connections in JSON ref #678

* Add client tag to the connection info.

* Name consistency tweak in generation of JSON variable-server connection list. ref #732

* Add client IP address and port. ref #732

* Output should be going to the stringstream, not std::cout. Ref #732
2019-02-18 17:11:41 -06:00
Scott Fennell
66b3d984ff Merge branch 'master' into scan-build 2018-11-06 11:24:09 -06:00
Scott Fennell
21c01a5454 scan-build changes
This reverts commit e86027f825.
2018-11-06 11:23:12 -06:00
Scott Fennell
d2e81257c2 #687 do not warn or convert unit -- 2018-10-30 10:40:46 -05:00
Scott Fennell
e86027f825 revert scan-build changes, need further testing before merge 2018-10-22 15:11:29 -05:00
Scott Fennell
bc35e64406
Merge pull request #673 from nasa/#scan-build
#671 fix all non memory manager scan-build bugs.
2018-10-20 13:16:35 -05:00
Pappy Van Winkle
121fa84081 Use correct format specifiers.
Used http://www.cplusplus.com/reference/cstdio/printf/ as a reference.
2018-10-11 22:52:04 -05:00
Scott Fennell
7b3b47aa39 init value and style change VariableServerListenThread.cpp 2018-10-01 10:26:17 -05:00
Scott Fennell
2c43321076 remove dead assignments VariableServerThread_loop 2018-10-01 10:13:39 -05:00
Scott Fennell
53f3b308f5 Merge branch 'master' of https://github.com/nasa/trick 2018-09-25 10:41:35 -05:00
Scott Fennell
77e0e73b3f various static analyser bug fixes 2018-09-25 10:41:14 -05:00
jmpenn
fccf32093b
Explicitly specify void arg for C functions that take no arguments. (#670)
* Clock empty args to void

* command_line func empty args to void

* DataRecord func empty args to void

* debug_pause func empty args to void

* echojobs func empty args to void

* ExternalApplication func empty args to void

* FrameLog func empty args to void

* MasterSlave func empty args to void

* MonteCarlo func empty args to void

* outdllist func proto empty args to void

* sie func empty args to void

* SimTime func empty args to void

* UnitTest func empty args to void

* var_server func empty args to void

* wcs func empty args to void
2018-09-19 11:25:04 -05:00
Alex Lin
12c7dbd4cf Trick's new variable server address is hard to debug if you don't know it changed #546
Created a second multicast socket to broadcast the sims variable server information
on the old address.
2018-01-19 16:49:08 -06:00
Christopher LaChance
6184aa6cd9
Some unit test warnings addressed. (#515)
* Removed purple warnings from unit test compilation.

* "Fixed const corectness bug. Added more warning fixes."

* Fixed warning issue.

* Removed null checking and (char*) casting.

* Changed sizeof parameter to variable from data structure.
2017-11-29 15:35:16 -06:00
John M. Penn
841473583c Updated var server multicast address to 239.3.14.15. Ref #452 2017-07-05 16:40:22 -05:00