Commit Graph

93 Commits

Author SHA1 Message Date
Eduardo Almeida
1f438ce6f4 Fix clang-tidy modernize-use-auto warnings 2023-09-18 00:36:46 +01:00
Eduardo Almeida
941536313a openflow: Move ReceivePortMod() to fix (erroneous) Doxygen warning 2023-08-08 18:02:14 +00:00
Eduardo Almeida
10e0166b43 openflow: Fix Doxygen warnings 2023-08-08 18:02:14 +00:00
Eduardo Almeida
5801e085fe openflow: Move static functions to top of file 2023-08-08 18:02:14 +00:00
Eduardo Almeida
38425bf0f4 openflow: Remove conditional compilation guards 2023-08-08 18:02:14 +00:00
Gabriel Ferreira
71af533e41 openflow: update copyright info in openflow examples 2023-05-29 22:36:32 -03:00
Gabriel Ferreira
ec9d26acd9 bindings: package ns-3 as a pip wheel
Includes:
- Python examples to test Brite, Click and Openflow
- CI jobs for manylinux packaging of pip wheel
- Support for Linux distributions with lib and lib64 directories
- Configuration of RPATH not to require setting LD_LIBRARY_PATH

Signed-off-by: Gabriel Ferreira <gabrielcarvfer@gmail.com>
2023-05-29 22:36:32 -03:00
Eduardo Almeida
42d6eea6de Remove emacs lines from Python and C++ files 2023-05-23 16:20:52 +00:00
Eduardo Almeida
6ea0a8975e Remove unnecessary enum specifier 2023-05-13 19:51:45 +00:00
Tom Henderson
38b33903ba openflow: Align Callback usage with signature in CommandLine class 2023-03-13 08:00:08 -07:00
Gabriel Ferreira
7193cce35b build: fetch dependencies for Brite, Click and Openflow
Signed-off-by: Gabriel Ferreira <gabrielcarvfer@gmail.com>
2023-02-15 14:44:45 +00:00
Eduardo Almeida
f2a871566e openflow: Fix clang-tidy warnings 2022-10-29 14:37:24 +01:00
Eduardo Almeida
7c182618ed Fix clang-tidy readability-redundant-string-cstr warnings 2022-10-28 16:05:20 +00:00
Tom Henderson
1d61c8bdb0 openflow: Suppress warnings about redefined macros 2022-10-18 09:00:22 -07:00
Eduardo Almeida
85ade4e18d Fix Doxygen comment formatting and typos 2022-10-16 14:49:21 +01:00
Eduardo Almeida
95e95f8904 Fix clang-tidy warnings in brite, click, mpi, openflow, p2p, visualizer 2022-10-14 16:58:17 +00:00
Eduardo Almeida
dfc6fb9d2d Remove emacs comment from C++ files 2022-10-14 14:13:12 +00:00
Eduardo Almeida
e25ff966fe Apply clang-format to codebase 2022-10-07 20:08:35 +00:00
Eduardo Almeida
3e39cb0724 Fix formatting of some files before clang-format application 2022-10-06 20:41:07 +00:00
Peter D. Barnes, Jr
e461e54d5a Update Ptr validity checks to new Ptr<>::operator bool 2022-08-18 08:59:30 -07:00
Gabriel Ferreira
89d992af47 build: cmake-format 2022-06-18 17:57:06 -03:00
Tom Henderson
b6a5ee8151 Run utils/trim-trailing-whitespace.py on codebase 2022-06-05 21:01:11 -07:00
Gabriel Arrobo
7d9543b6f7 openflow: Update docs and add compilation flag required by Clang 2022-05-16 12:55:35 +00:00
Gabriel Ferreira
c7553687d7 build: enable colorized CMake and g++/clang++ when using ns3 2022-04-02 21:11:16 -03:00
Gabriel Ferreira
cbb7628473 build, docs: fixes find_external_library header search paths and docs
Includes:
- search for headers in the library directory when using find_external_library
- prevent module processing (brite, click and openflow) from continuing if ${dependency_name}_FOUND is not set
2022-03-25 23:30:04 -03:00
Gabriel Ferreira
fbebb61a6f build: refactoring CMake and ns3
Includes:
- summarize ns3 commands on top-level --help
- add --quiet as a post-positional argument
- refactor verbose variable names
- aggregate ./ns3 --check-config|profile|version into ./ns3 show config|profile|version
- remove ns3 --check deprecated option
- set VERBOSE environment variable when building/running with -v/--verbose
  https://gitlab.com/nsnam/ns-3-dev/-/issues/590#note_870520212
- enable verbose Makefiles when NS3_VERBOSE is enabled
  https://gitlab.com/nsnam/ns-3-dev/-/issues/590
- introduce default build profile and refactor others
  https://gitlab.com/nsnam/ns-3-dev/-/issues/591
- use "-Og" in "CMAKE_BUILD_TYPE=Debug"/"ns3 -d debug"
- add back FindPython3 and fallback to FindPythonInterp if needed
- redirect pybindgen apiscan output to apiscan.log
- enable CMAKE_FIND_DEBUG_MODE with NS3_VERBOSE and CMake >= 3.17
- add search path logging to find_external_library
  Requires NS3_VERBOSE=ON. This is an anternative to CMAKE_FIND_DEBUG_MODE=true available in CMake >= 3.17
- remove C support
- reduce Int128 checks
- fuse Boost Units Quantity and SI header checks
- replace not found messages with skipping
2022-03-13 21:23:47 +00:00
Gabriel Ferreira
e32c177e45 build: remove waf files, tests and references 2022-02-21 22:08:45 -03:00
Tommaso Pecorella
fcd6678a01 openflow: doxygen fixes 2022-01-30 12:06:53 -06:00
Gabriel Ferreira
7814ddf5b9 build: silence no-stringop-trunction warning for the openflow module 2022-01-29 16:03:08 -03:00
Gabriel Ferreira
da72879f4c build: better emulate find_package behavior and replace FindSQLite3
Includes:
- refactoring of find_external_library with argument parsing
2022-01-29 16:03:08 -03:00
Gabriel Ferreira
41aacec626 build: CMake refactoring
Includes:
- refactor build_lib and build_lib_example macros
    - unify src and contrib macros
    - replace macro with function not to leak definitions
    - parse list of arguments
- different cmake-format file for modules to list one item per line
2022-01-28 10:20:18 -03:00
Gabriel Ferreira
bbe2128abe build: more ns3 and CMake fixes
Includes:
- inform ns3 user cmake was not found, or an unsupported version was found
- replace open-mpi environment variables with command-line arguments
- mark more variables as advanced
- add -v and --verbose option to run and only output the programs output by default
- fix scratch subdir prefixes and add tests
- prevent cmake crash when scratch sources do not have a main function
- disable MPI module by default
- wrap cmakelists_content in quotes to prevent failure of filter_libraries
- install pkgconfig files and add tests
- pkg-config generation (still missing installation)
- forward PYTHONPATH to modulegen
- fix dependency search for brite, click and openflow
2022-01-23 17:30:08 -03:00
Gabriel Ferreira
33f2ee841b doc: update ns3 API 2022-01-19 16:25:03 -03:00
Gabriel Ferreira
a893eba7e3 build: Fix CMake and ns3 script bugs, add a test suite and fix formatting 2021-12-05 21:53:49 +00:00
Gabriel Ferreira
3c604d5b2e Update docs with CMake and ns3 wrapper 2021-12-01 12:29:56 -08:00
Gabriel Ferreira
9c876c7f5a CMake buildsystem 2021-12-01 12:29:55 -08:00
Tom Henderson
5b4a8ebb30 openflow: Restore dependency on Boost headers 2021-06-17 12:09:25 -07:00
Tom Henderson
a0ff41c945 openflow: Disable library-induced warning on optimized builds
Optimized builds on newer g++ versions are triggering warnings about the
openflow library's use of strncpy().
2021-05-31 20:16:48 -07:00
Tommaso Pecorella
78c1c9f64a openflow: (fixes #342) remove unused libraries (boost, xml2) 2021-01-31 13:37:13 +00:00
Steven Smith
dded72e02e build: (fixes #217) Guard compilation of example used as a test
* Added documentation to ExampleAsTestSuite on the need for this guarding
* Updated with Peter's patch for examples-as-test placeholders in wscripts
2020-06-08 09:35:50 -07:00
Peter D. Barnes, Jr
b23be18b3b Use CommandLine cmd (__FILE__) instead of COMMANDLINE macro.
This in effect replaces commit 5e624d550
2020-05-01 14:42:53 -07:00
Peter D. Barnes, Jr
5e624d5504 doc: Use the new COMMANDLINE macro in every example 2020-04-27 16:20:09 -07:00
Tom Henderson
0258405cc6 build: Upgrade scripts to Python 3 (many changes due to Ankit Deepak) 2019-08-12 16:55:34 -07:00
Alexander Krotov
8d1b7b1391 Spellcheck the rest of ns-3 2018-06-28 12:51:39 +03:00
Peter D. Barnes, Jr.
5cefb05eca wscript: replace tab indenting with spaces 2016-08-04 12:44:41 -07:00
Tom Henderson
e9dbae3a70 openflow: Remove declaration of private inline library function
This change is needed to link openflow library using g++-5.
2016-03-12 14:43:37 -08:00
Siddharth Santurkar
b5fde4107c port wscripts, test.py, and waf-tools to Python3 2015-09-03 21:14:55 -07:00
Tom Henderson
3634c939ce bug 2157: OpenFlowSwitchNetDevice::BufferFromPacket setting eth_type incorrectly (patch due to Kang Chen) 2015-09-02 16:37:05 -07:00
Tom Henderson
a722fdd7d9 bug 1557: errors in OpenFlowSwitchNetDevice::BufferFromPacket(); patch due to Long Li and Ovidiu Poncea 2015-09-02 16:32:46 -07:00
Ovidiu Poncea
8f00ef9db8 bug 2158: Fix flooding of packets on input port, for packets received on in!=0
When you have the action OFPP_FLOOD on a flow, and the received packet is
not coming into the switch through port 0, then the packet will be flooded on
all ports, including the receiving port!  This is especially bad if
you have broadcasts as packets will get replicated indefinitely (ARP req for
e.g.). This is caused by missing ntohs() that fails to convert port numbers
to their correct values. The switch works correctly for broadcast packets
received on port zero.
Example: The ReceivePacketOut() gets 0 if the input port is 0 and it works.
But will get 512 if the input port is 1 and since 512 is not our real input
port the check will fail and the packet will also be replicated on the input
port.
2015-08-31 10:41:05 -07:00