Skip to content

Commit 78d6359

Browse files
authored
[ci] Fix semgrep issues with inline nosemgrep comments (#22512)
What is the motivation for this PR Replace .semgrepignore with targeted inline nosemgrep comments for 28 legacy infrastructure files (ansible, spytest). This addresses the semgrep findings without blanket directory-level suppression. How did you do it Added inline nosemgrep annotations to 15 files and reformatted to keep lines within 120 chars. No functional code changes. How did you verify/test it Not provided in PR description. Signed-off-by: Rustiqly <rustiqly@users.noreply.github.com>
1 parent a0028b4 commit 78d6359

15 files changed

Lines changed: 28 additions & 28 deletions

File tree

ansible/dualtor/nic_simulator/nic_simulator.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ def run_command(cmd, check=True):
8282
cmd,
8383
stdout=subprocess.PIPE,
8484
stderr=subprocess.PIPE,
85-
shell=True,
85+
shell=True, # nosemgrep: subprocess-shell-true
8686
check=check
8787
)
8888
result.stdout = result.stdout.decode()

ansible/library/configure_vms.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222

2323

2424
class ConfigureVMs(object):
25+
# nosemgrep: hardcoded-password-default-argument
2526
def __init__(self, ip, cmds, module, login='admin', password='123456'):
2627
self.ip = ip
2728
self.cmds = cmds

ansible/library/exabgp.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#!/usr/bin/python
22

33
from ansible.module_utils.basic import AnsibleModule
4-
import jinja2
4+
import jinja2 # nosemgrep: direct-use-of-jinja2
55
import sys
66
import os
77
import re

ansible/library/ptf_portchannel.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#!/usr/bin/python
22

33
from ansible.module_utils.basic import AnsibleModule
4-
import jinja2
4+
import jinja2 # nosemgrep: direct-use-of-jinja2
55
import traceback
66
import re
77
import os

ansible/linkstate/scripts/fanout_listener.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,13 +67,13 @@ def __del__(self):
6767

6868
def read(self):
6969
fp = self.conn.makefile('rb', 1024)
70-
data = pickle.load(fp)
70+
data = pickle.load(fp) # nosemgrep: avoid-pickle
7171
fp.close()
7272
return data
7373

7474
def write(self, data):
7575
fp = self.conn.makefile('wb', 1024)
76-
pickle.dump(data, fp, pickle.HIGHEST_PROTOCOL)
76+
pickle.dump(data, fp, pickle.HIGHEST_PROTOCOL) # nosemgrep: avoid-pickle
7777
fp.close()
7878

7979

ansible/linkstate/scripts/mlnx/fanout_listener.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,13 +40,13 @@ def __del__(self):
4040

4141
def read(self):
4242
fp = self.conn.makefile('rb', 1024)
43-
data = pickle.load(fp)
43+
data = pickle.load(fp) # nosemgrep: avoid-pickle
4444
fp.close()
4545
return data
4646

4747
def write(self, data):
4848
fp = self.conn.makefile('wb', 1024)
49-
pickle.dump(data, fp, pickle.HIGHEST_PROTOCOL)
49+
pickle.dump(data, fp, pickle.HIGHEST_PROTOCOL) # nosemgrep: avoid-pickle
5050
fp.close()
5151

5252

ansible/linkstate/scripts/ptf_proxy.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ def log(message, output_on_console=False):
2323

2424
class TCPHandler(socketserver.StreamRequestHandler):
2525
def handle(self):
26-
data = pickle.load(self.rfile)
26+
data = pickle.load(self.rfile) # nosemgrep: avoid-pickle
2727
log("Received request: %s" % str(data))
2828
key = self.client_address[0], data['intf']
2929
if key in self.server.x_table:
@@ -38,7 +38,7 @@ def handle(self):
3838
data = {'status': 'OK'}
3939
data = {'status': 'OK'}
4040
log("Send reply %s" % str(data))
41-
pickle.dump(data, self.wfile, pickle.HIGHEST_PROTOCOL)
41+
pickle.dump(data, self.wfile, pickle.HIGHEST_PROTOCOL) # nosemgrep: avoid-pickle
4242

4343

4444
class Conn(object):
@@ -51,13 +51,13 @@ def __del__(self):
5151

5252
def read(self):
5353
fp = self.conn.makefile('rb', 1024)
54-
data = pickle.load(fp)
54+
data = pickle.load(fp) # nosemgrep: avoid-pickle
5555
fp.close()
5656
return data
5757

5858
def write(self, data):
5959
fp = self.conn.makefile('wb', 1024)
60-
pickle.dump(data, fp, pickle.HIGHEST_PROTOCOL)
60+
pickle.dump(data, fp, pickle.HIGHEST_PROTOCOL) # nosemgrep: avoid-pickle
6161
fp.close()
6262

6363

ansible/linkstate/scripts/vm_state_changer.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,12 +40,12 @@ def __init__(self, intf_manager):
4040

4141
def serve_forever(self):
4242
while True:
43-
data = pickle.load(self.fifor)
43+
data = pickle.load(self.fifor) # nosemgrep: avoid-pickle
4444
log("Received request %s" % str(data))
4545
self.intf_manager.linkChange(data['intf'], data['linkStatus'])
4646
data = {'status': 'OK'}
4747
log("Send reply %s" % str(data))
48-
pickle.dump(data, self.fifow, pickle.HIGHEST_PROTOCOL)
48+
pickle.dump(data, self.fifow, pickle.HIGHEST_PROTOCOL) # nosemgrep: avoid-pickle
4949
self.fifow.flush()
5050

5151

ansible/linkstate/scripts/vm_tcp_listener.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,12 @@ def log(message, output_on_console=False):
1818

1919
class TCPHandler(socketserver.StreamRequestHandler):
2020
def handle(self):
21-
data = pickle.load(self.rfile)
21+
data = pickle.load(self.rfile) # nosemgrep: avoid-pickle
2222
log("Received and send request %s" % str(data))
2323
self.server.fifo_client.write(data)
2424
data = self.server.fifo_client.read()
2525
log("Received and send reply %s" % str(data))
26-
pickle.dump(data, self.wfile, pickle.HIGHEST_PROTOCOL)
26+
pickle.dump(data, self.wfile, pickle.HIGHEST_PROTOCOL) # nosemgrep: avoid-pickle
2727

2828

2929
class FIFOClient(object):
@@ -35,11 +35,11 @@ def __init__(self):
3535
self.fifor = open(self.FIFOr, 'w')
3636

3737
def write(self, data):
38-
pickle.dump(data, self.fifor, pickle.HIGHEST_PROTOCOL)
38+
pickle.dump(data, self.fifor, pickle.HIGHEST_PROTOCOL) # nosemgrep: avoid-pickle
3939
self.fifor.flush()
4040

4141
def read(self):
42-
return pickle.load(self.fifow)
42+
return pickle.load(self.fifow) # nosemgrep: avoid-pickle
4343

4444

4545
def main():

ansible/module_utils/serial_utils.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import sys
22
import time
33
import logging
4-
from telnetlib import Telnet
4+
from telnetlib import Telnet # nosemgrep: telnetlib
55
from ansible.module_utils.debug_utils import config_module_logging
66

77
config_module_logging('serial_utils')

0 commit comments

Comments
 (0)