Files
stefan.tollkuehn 6312c18a91 Harden invitee input and contact names
Security audit found two gaps. Sabre only quotes ICS
parameter values containing space, newline, quote, colon,
semicolon, caret, comma or plus, so a bare carriage
return in a contact name would be written into the
serialized event unquoted and break the line structure;
names with control characters are now dropped. The raw
attendee input and the search query had no length
bound, a huge POST field was fully split, iterated and
echoed back on re-render, a cheap CPU sink; both are
now capped, the query at the longest possible email
fragment.
2026-10-22 19:33:03 +02:00

42 lines
2.8 KiB
JSON

{
"translations": {
"The following meeting will be added to your Nextcloud Calendar.": "The following meeting will be added to your Nextcloud Calendar.",
"This request came from an external link. Only continue if you trust its source.": "This request came from an external link. Only continue if you trust its source.",
"Title": "Title",
"Description": "Description",
"Start": "Start",
"End": "End",
"Organizer": "Organizer",
"Location": "Location",
"Link": "Link",
"Calendar": "Calendar",
"Add to Nextcloud Calendar": "Add to Nextcloud Calendar",
"Cancel": "Cancel",
"Meeting title is required.": "Meeting title is required.",
"Meeting title is too long.": "Meeting title is too long.",
"Meeting title contains invalid characters.": "Meeting title contains invalid characters.",
"Meeting description is too long.": "Meeting description is too long.",
"Meeting description contains invalid characters.": "Meeting description contains invalid characters.",
"Invalid date/time.": "Invalid date/time.",
"End time must be after start time.": "End time must be after start time.",
"Location is too long.": "Location is too long.",
"Location contains invalid characters.": "Location contains invalid characters.",
"Location must be an HTTPS URL.": "Location must be an HTTPS URL.",
"Meeting URL is too long.": "Meeting URL is too long.",
"Meeting URL contains invalid characters.": "Meeting URL contains invalid characters.",
"Meeting URL must be an HTTPS URL.": "Meeting URL must be an HTTPS URL.",
"Organizer email address is too long.": "Organizer email address is too long.",
"Organizer contains invalid characters.": "Organizer contains invalid characters.",
"Invalid organizer email address.": "Invalid organizer email address.",
"No writable calendar was found in your account. Create one in the Nextcloud Calendar app, then try again.": "No writable calendar was found in your account. Create one in the Nextcloud Calendar app, then try again.",
"The selected calendar is no longer writable. Pick another one and try again.": "The selected calendar is no longer writable. Pick another one and try again.",
"The event could not be created. Please try again.": "The event could not be created. Please try again.",
"Invitees": "Invitees",
"Email addresses, comma-separated": "Email addresses, comma-separated",
"%s is not a valid email address.": "%s is not a valid email address.",
"A meeting can invite at most %d people.": "A meeting can invite at most %d people.",
"Invitee list is too long.": "Invitee list is too long."
},
"pluralForms": "nplurals=2; plural=(n != 1);"
}