30118a2401
- Kettenbau mit Aussteller- und Signaturprüfung (checkIssued plus verify), Wurzel nur auf Wunsch - build-Route für Fullchain und Nur Kette (PEM), eigene JSON-Grenze 512 KiB mit 413 und Code tooLarge - Reiter Zusammenführen mit Kettenansicht, Hinweis bei fehlendem Zwischenzertifikat Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
15 lines
514 B
TypeScript
15 lines
514 B
TypeScript
/**
|
|
* Dateinamen-Helfer des Zertifikat-Managers. Eigene Datei, damit cert-model.ts und cert-output.ts
|
|
* einander nicht gegenseitig einbinden muessen.
|
|
*/
|
|
|
|
/** Dateiname ohne Pfad und ohne gefaehrliche Zeichen, z. B. „*.example.de“ -> „wildcard.example.de“. */
|
|
export function safeBaseName(raw: string, fallback: string): string {
|
|
const cleaned = raw
|
|
.replace(/^\*\./, 'wildcard.')
|
|
.replace(/[^A-Za-z0-9._-]+/g, '_')
|
|
.replace(/^[._]+/, '')
|
|
.slice(0, 80);
|
|
return cleaned || fallback;
|
|
}
|