Skip to content

[DHCP relay]: Fix bug which could cause incorrect interface name association#1224

Closed
jleveque wants to merge 2 commits intosonic-net:masterfrom
jleveque:dhcp_relay_fix
Closed

[DHCP relay]: Fix bug which could cause incorrect interface name association#1224
jleveque wants to merge 2 commits intosonic-net:masterfrom
jleveque:dhcp_relay_fix

Conversation

@jleveque
Copy link
Copy Markdown
Contributor

@jleveque jleveque commented Dec 9, 2017

  • Fix bug where "name" field of interface_info struct was improperly getting overwritten in _bridgefdbquery(). Under certain circumstances (like upon receiving a unicast DHCP renewal message), the stored interface's name could be overwritten by a different interface's name, breaking the relay agent's ability to properly relay packets for the remainder of the process' lifetime.

  • Unrelated changes:

    • Define circuit_id and remote_id fields of interface_info struct as 64-byte char arrays instead of pointers. Previously, the circuit_id pointer was getting updated to a pointer of a buffer on the stack, and thus would almost always contain garbage. This would prevent matching an interface by its circuit ID (if that behavior is so desired)
    • Minor cleanup and tweaks to buffer sizes and some logic to ensure consistent behavior (and make code more understandable). Although they were not causing problems now, they could have potentially done so in the future
    • Removed whitespace from empty lines
    • Generate patch file using git format-patch and apply using git apply instead of diff -ruN/patch -p1 to align with most other patch generation/application in the SONiC project

@jleveque jleveque self-assigned this Dec 9, 2017
@jleveque jleveque requested review from lguohan and yxieca December 9, 2017 04:12
Copy link
Copy Markdown
Contributor

@yxieca yxieca left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good job!

@jleveque
Copy link
Copy Markdown
Contributor Author

Closing in favor of #1233

@jleveque jleveque closed this Dec 12, 2017
@jleveque jleveque deleted the dhcp_relay_fix branch December 13, 2017 17:24
abdosi added a commit that referenced this pull request Nov 14, 2020
c0df6355deb8bc3685395f727983a5e9f3b06f61 (HEAD -> 201911, origin/201911) Updates to bgp config and show commands with BGP_INTERNAL_NEIGHBOR table (#1224) (#1237)
d683bb48604220942b9f6bdea90c0ea4ff4f72ef [CLI][show][platform] Added ASIC count in the output. (#1185) (#1227)
4585be10aa8e761ce1091ac4a20e562c2550970c [show] Fix 'show int neigh expected' (#1189)
29e4469d5e6c5058fe20c1ce71790f69b7193e7e [201911][fwutil]: Use logger from sonic-py-common (#1190)

Signed-off-by: Abhishek Dosi <abdosi@microsoft.com>
jleveque added a commit that referenced this pull request Nov 25, 2020
…heel (#5926)

Submodule updates include the following commits:

* src/sonic-utilities 9dc58ea...f9eb739 (18):
  > Remove unnecessary calls to str.encode() now that the package is Python 3; Fix deprecation warning (#1260)
  > [generate_dump] Ignoring file/directory not found Errors (#1201)
  > Fixed porstat rate and util issues (#1140)
  > fix error: interface counters is mismatch after warm-reboot (#1099)
  > Remove unnecessary calls to str.decode() now that the package is Python 3 (#1255)
  > [acl-loader] Make list sorting compliant with Python 3 (#1257)
  > Replace hard-coded fast-reboot with variable. And some typo corrections (#1254)
  > [configlet][portconfig] Remove calls to dict.has_key() which is not available in Python 3 (#1247)
  > Remove unnecessary conversions to list() and calls to dict.keys() (#1243)
  > Clean up LGTM alerts (#1239)
  > Add 'requests' as install dependency in setup.py (#1240)
  > Convert to Python 3 (#1128)
  > Fix mock SonicV2Connector in python3: use decode_responses mode so caller code will be the same as python2 (#1238)
  > [tests] Do not trim from PATH if we did not append to it; Clean up/fix shebangs in scripts (#1233)
  > Updates to bgp config and show commands with BGP_INTERNAL_NEIGHBOR table (#1224)
  > [cli]: NAT show commands newline issue after migrated to Python3 (#1204)
  > [doc]: Update Command-Reference.md (#1231)
  > Added 'import sys' in feature.py file (#1232)

* src/sonic-py-swsssdk 9d9f0c6...1664be9 (2):
  > Fix: no need to decode() after redis client scan, so it will work for both python2 and python3 (#96)
  > FieldValueMap `contains`(`in`)  will also work when migrated to libswsscommon(C++ with SWIG wrapper) (#94)

- Also fix Python 3-related issues:
    - Use integer (floor) division in config_samples.py (sonic-config-engine)
    - Replace print statement with print function in eeprom.py plugin for x86_64-kvm_x86_64-r0 platform
    - Update all platform plugins to be compatible with both Python 2 and Python 3
    - Remove shebangs from plugins files which are not intended to be executable
    - Replace tabs with spaces in Python plugin files and fix alignment, because Python 3 is more strict
    - Remove trailing whitespace from plugins files
santhosh-kt pushed a commit to santhosh-kt/sonic-buildimage that referenced this pull request Feb 25, 2021
…heel (sonic-net#5926)

Submodule updates include the following commits:

* src/sonic-utilities 9dc58ea...f9eb739 (18):
  > Remove unnecessary calls to str.encode() now that the package is Python 3; Fix deprecation warning (sonic-net#1260)
  > [generate_dump] Ignoring file/directory not found Errors (sonic-net#1201)
  > Fixed porstat rate and util issues (sonic-net#1140)
  > fix error: interface counters is mismatch after warm-reboot (sonic-net#1099)
  > Remove unnecessary calls to str.decode() now that the package is Python 3 (sonic-net#1255)
  > [acl-loader] Make list sorting compliant with Python 3 (sonic-net#1257)
  > Replace hard-coded fast-reboot with variable. And some typo corrections (sonic-net#1254)
  > [configlet][portconfig] Remove calls to dict.has_key() which is not available in Python 3 (sonic-net#1247)
  > Remove unnecessary conversions to list() and calls to dict.keys() (sonic-net#1243)
  > Clean up LGTM alerts (sonic-net#1239)
  > Add 'requests' as install dependency in setup.py (sonic-net#1240)
  > Convert to Python 3 (sonic-net#1128)
  > Fix mock SonicV2Connector in python3: use decode_responses mode so caller code will be the same as python2 (sonic-net#1238)
  > [tests] Do not trim from PATH if we did not append to it; Clean up/fix shebangs in scripts (sonic-net#1233)
  > Updates to bgp config and show commands with BGP_INTERNAL_NEIGHBOR table (sonic-net#1224)
  > [cli]: NAT show commands newline issue after migrated to Python3 (sonic-net#1204)
  > [doc]: Update Command-Reference.md (sonic-net#1231)
  > Added 'import sys' in feature.py file (sonic-net#1232)

* src/sonic-py-swsssdk 9d9f0c6...1664be9 (2):
  > Fix: no need to decode() after redis client scan, so it will work for both python2 and python3 (sonic-net#96)
  > FieldValueMap `contains`(`in`)  will also work when migrated to libswsscommon(C++ with SWIG wrapper) (sonic-net#94)

- Also fix Python 3-related issues:
    - Use integer (floor) division in config_samples.py (sonic-config-engine)
    - Replace print statement with print function in eeprom.py plugin for x86_64-kvm_x86_64-r0 platform
    - Update all platform plugins to be compatible with both Python 2 and Python 3
    - Remove shebangs from plugins files which are not intended to be executable
    - Replace tabs with spaces in Python plugin files and fix alignment, because Python 3 is more strict
    - Remove trailing whitespace from plugins files
stepanblyschak pushed a commit to stepanblyschak/sonic-buildimage that referenced this pull request May 10, 2021
…ble (sonic-net#1224)

- What I did
Updates to bgp config and show commands with the movement of internal bgp sessions to a new table BGP_INTERNAL_NEIGHBOR table.
With the introduction of BGP_INERNAL_NEIGHBOR table, the user cannot start/stop/remove internal neighbors which I feel is not needed as these internal bgp sessions which are supposed to be UP always.

- How I did it
Updated the show/bgp util so that it gets the internal bgp sessions from BGP_INTERNAL_NEIGHBOR table.
Removed the API's to get the local_as in config/bgp which is not required now.

- How to verify it
Made sure that the output remain same with the new internal bgp neighbor table.
mssonicbld added a commit that referenced this pull request Aug 30, 2023
…tically (#16291)

#### Why I did it
src/sonic-sairedis
```
* 2ebbd48 - (HEAD -> 202211, origin/202211) [syncd] Add pre match logic for acl entry (#1240) (11 hours ago) [Kamil Cudnik]
* 1db8726 - Use SAI_STATUS_ITEM_NOT_FOUND when key not found (#1224) (11 hours ago) [Lawrence Lee]
* 9e4071b - [CI]: Fix collect log error in azp template. (#1282) (4 days ago) [Nazarii Hnydyn]
```
#### How I did it
#### How to verify it
#### Description for the changelog
dgsudharsan pushed a commit to dgsudharsan/sonic-buildimage that referenced this pull request Jun 18, 2025
… TH5-512 (sonic-net#1224)

<!--
Please make sure you've read and understood our contributing guidelines:
     https://github.com/Azure/SONiC/blob/gh-pages/CONTRIBUTING.md

** Make sure all your commits include a signature generated with `git
commit -s` **

If this is a bug fix, make sure your description includes "fixes #xxxx",
or
     "closes #xxxx" or "resolves #xxxx"

     Please provide the following information:
-->

#### Why I did it
Add qos values for Arista-7060X6-16PE-384C-O128S2 TH5-512

##### Work item tracking
- Microsoft ADO **(number only)**:

#### How I did it

#### How to verify it

<!--
If PR needs to be backported, then the PR must be tested against the
base branch and the earliest backport release branch and provide tested
image version on these two branches. For example, if the PR is requested
for master, 202211 and 202012, then the requester needs to provide test
results on master and 202012.
-->

#### Which release branch to backport (provide reason below if selected)

<!--
- Note we only backport fixes to a release branch, *not* features!
- Please also provide a reason for the backporting below.
- e.g.
- [x] 202006
-->

- [ ] 201811
- [ ] 201911
- [ ] 202006
- [ ] 202012
- [ ] 202106
- [ ] 202111
- [ ] 202205
- [ ] 202211
- [ ] 202305

#### Tested branch (Please provide the tested image version)

<!--
- Please provide tested image version
- e.g.
- [x] 20201231.100
-->

- [ ] <!-- image version 1 -->
- [ ] <!-- image version 2 -->

#### Description for the changelog
<!--
Write a short (one line) summary that describes the changes in this
pull request for inclusion in the changelog:
-->

<!--
Ensure to add label/tag for the feature raised. example - PR#2174 under
sonic-utilities repo. where, Generic Config and Update feature has been
labelled as GCU.
-->

#### Link to config_db schema for YANG module changes
<!--
Provide a link to config_db schema for the table for which YANG model
is defined
Link should point to correct section on
https://github.com/Azure/sonic-buildimage/blob/master/src/sonic-yang-models/doc/Configuration.md
-->

#### A picture of a cute animal (not mandatory but encouraged)
vmittal-msft pushed a commit to vmittal-msft/sonic-buildimage that referenced this pull request Oct 20, 2025
…03 (sonic-net#1235)

```<br>* aa74696 - (HEAD -> 202503) Merge branch '202412' of https://github.com/Azure/sonic-buildimage-msft into 202503 (2025-06-13) [Sonic Automation]
* 9fa6edd - (origin/202412, 202412) [action] [PR:22588] skip frr_bmp container from monit (sonic-net#1212) (2025-06-12) [mssonicbld]
* 70de857 - [submodule][202412] Update submodule sonic-sairedis to the latest HEAD automatically (sonic-net#1214) (2025-06-12) [mssonicbld]
* f3d9c03 - [action] [PR:22673] Add qos values for Arista-7060X6-16PE-384C-O128S2 TH5-512 (sonic-net#1224) (2025-06-12) [mssonicbld]
* c20f188 - Add qos values for Arista-7060X6-16PE-384C-O128S2 TH5-512 (sonic-net#1220) (2025-06-12) [rick-arista]
* 07dbeed - [FRR]: Fix SRv6 static SIDs delete crash (sonic-net#1200) (2025-06-12) [Riff]
|\ 
| failure_prs.log skip_prs.log 2d5e52b - Merge branch '202412' into fix/fix_srv6_static_sids_crash_202412 (2025-06-10) [Carmine Scarpitta]
| failure_prs.log skip_prs.log 26e0868 - Merge branch '202412' into fix/fix_srv6_static_sids_crash_202412 (2025-06-05) [Carmine Scarpitta]
| failure_prs.log skip_prs.log 1b90ab9 - Address review comments (2025-06-05) [Carmine Scarpitta]
| failure_prs.log skip_prs.log cb402c7 - [FRR]: Fix SRv6 static SIDs delete crash (2025-06-04) [Carmine Scarpitta]
* 053f8ac - [202412] Code sync sonic-net/sonic-buildimage:202411 => 202412 (sonic-net#1159) (2025-06-12) [Riff]
|\ 
| failure_prs.log skip_prs.log 8cd8a28 - Merge remote-tracking branch 'base/202411' into code-sync-202412 (2025-06-10) [r12f]
| failure_prs.log skip_prs.log 81dd34b - [submodule] Update submodule sonic-swss to the latest HEAD automatically (sonic-net#22883) (2025-06-08) [mssonicbld]
| failure_prs.log skip_prs.log 66690b6 - [submodule] Update submodule sonic-swss to the latest HEAD automatically (sonic-net#22857) (2025-06-06) [mssonicbld]
| failure_prs.log skip_prs.log 221fdba - [submodule] Update submodule sonic-swss-common to the latest HEAD automatically (sonic-net#22858) (2025-06-06) [mssonicbld]
| failure_prs.log skip_prs.log 928671d - switch to use host syslog to for openbmp logging (sonic-net#22817) (2025-06-03) [mssonicbld]
| failure_prs.log skip_prs.log f212bcd - Adding default QoS configurations for Arista-7050CX3-32S-C28S4. (sonic-net#22744) (2025-05-31) [mssonicbld]
| failure_prs.log skip_prs.log e060bb6 - [submodule] Update submodule sonic-gnmi to the latest HEAD automatically (sonic-net#22740) (2025-05-29) [mssonicbld]
| failure_prs.log skip_prs.log 6cfffb6 - [submodule] Update submodule sonic-linux-kernel to the latest HEAD automatically (sonic-net#22290) (2025-05-25) [mssonicbld]
| failure_prs.log skip_prs.log c4fef0a - skip frr_bmp container from monit (sonic-net#22603) (2025-05-25) [mssonicbld]
| failure_prs.log skip_prs.log 3a9d5bc - [build] Upgrade natsort pypi package from 6.2.1 to 8.4.0 (sonic-net#22609) (2025-05-24) [Liu Shilong]
| failure_prs.log skip_prs.log 683b336 - Bump up /dev/shm size for Broadcom platforms to 512MB by default (sonic-net#22547) (2025-05-23) [mssonicbld]
| failure_prs.log skip_prs.log fb14505 - [submodule] Update submodule sonic-swss to the latest HEAD automatically (sonic-net#22636) (2025-05-22) [mssonicbld]
| failure_prs.log skip_prs.log 78d363b - [resolv-config] Improve container resolv.conf update mechanism (sonic-net#22462) (2025-05-15) [mssonicbld]
| failure_prs.log skip_prs.log e87edda - Override PTF_IMAGE_TAG for release branch [202411] (sonic-net#22585) (2025-05-13) [Sai Kiran]
* 8081aec - Fix info and order of components for 7060x6_64pe_b (sonic-net#1231) (2025-06-12) [Ryan Garofano]<br>```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants