ProperEscapingFunction: flag printf() usages for placeholders being escaped incorrectly
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 42/100
Rechercherichtung
Beginne damit, die Regel ProperEscapingFunction und ihre Behandlung von printf()-Aufrufen zu finden. Vergleiche die gemeldeten und nicht gemeldeten PHP-Beispiele im Issue und finde anschließend die vorhandene Testabdeckung der Regel. Als erledigt gilt die Aufgabe, wenn falsch maskierte Platzhalterargumente gemeldet werden, während die gezeigte korrekte Maskierung und die Fälle mit Übersetzungsfunktionen akzeptiert werden.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Describe the solution you'd like
When printf() is used, we should ensure that the content in the placeholders are correctly escaped.
What code should be reported as a violation?
printf(
'<a class="%s" href="%s">%s</a>',
esc_url( $class ), // Error.
esc_attr( $url ), // Error.
esc_attr( $content ), // Error.
);
printf(
'<a class="%s" href="%s">%s</a>',
esc_html__( $class, 'domain' ), // Error.
esc_url( $url ),
esc_attr_x( $content, $context, 'domain' ), // Error.
);
What code should not be reported as a violation?
Correct usages of escaping:
printf(
'<a class="%s" href="%s">%s</a>',
esc_attr( $class ),
esc_url( $url ),
esc_html( $content )
);
Correct usages of escaping with translation functions:
printf(
'<a class="%s" href="%s">%s</a>',
esc_attr_x( $class, $context, 'domain' ),
esc_url( $url ),
esc_html__( $content, 'domain' )
);
Additional context
- Vorherrschende Sprache
- PHP
- Sterne
- 261
- Forks
- 44
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus Automattic/VIP-Coding-Standards
-
AlwaysReturnInFilter: isInsideIfConditonal() guards the conditions array after reading itEvtl. vergeben @tomjn hat das vor 6 Tagen übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
-
Bug: PreGetPosts warns when the early is_main_query() return is not the first statement in its ifEvtl. vergeben @tomjn hat das vor 6 Tagen übernommen. Offen
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 76/100
-
Suppress filters in get_posts false positiveEvtl. vergeben @tomjn hat das vor 7 Tagen übernommen. Offen
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 68/100
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 48/100
-
Breaking Change Type: Maintenance
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 35/100
Automattic/VIP-Coding-Standards#849 · 1 Kommentar ·
Alle Issues in Automattic/VIP-Coding-Standards
Ähnliche Issues
-
📚 Documentation: Placeholder link `link-to-realtime-docs` in Flutter SDK changelogEvtl. vergeben @ShyneChikwapulo hat das heute übernommen. Offenapi / realtime product / auth product / messaging product / vcs
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 82/100
appwrite/appwrite#14272 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 75/100
Boavizta/boaviztapi#580 · 1 Kommentar ·
-
Add PrestashopOffenrequest
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
endoflife-date/endoflife.date#11303 ·
Maintainer antworten meist innerhalb von 1 Tag
-
0. to triage enhancement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
Maintainer antworten meist innerhalb von 1 Tag