Software /
code /
prosody
File
teal-src/util/dataforms.d.tl @ 12227:88958c0ecab3
mod_http_file_share: Use alternate syntax for filename in Content-Disposition
The Lua string.format %q doesn't behave correctly for all characters
that should be escaped in a quoted-string. And who knows what effects
higher Unicode might have here.
Applying percent-encoding of filenames seems like the safest way to deal
with filenames, as well as being easier than implementing the actual
quoted-string transform, which seems complicated and I'm not even sure
it covers every possible character.
Filenames can safely be assumed to be UTF-8 since they are passed in an
attribute in the query without any escaping.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sat, 29 Jan 2022 16:11:38 +0100 |
parent | 11432:113f3912c7cb |
child | 12614:d498e7e7853a |
line wrap: on
line source
local stanza_t = require "util.stanza".stanza_t local enum form_type "form" "submit" "cancel" "result" end local enum field_type "boolean" "fixed" "hidden" "jid-multi" "jid-single" "list-multi" "list-single" "text-multi" "text-private" "text-single" end local record form_field type : field_type var : string -- protocol name name : string -- internal name label : string desc : string datatype : string range_min : number range_max : number value : any -- depends on field_type options : table end local record dataform title : string instructions : string { form_field } -- XXX https://github.com/teal-language/tl/pull/415 form : function ( dataform, table, form_type ) : stanza_t end local record lib new : function ( dataform ) : dataform end return lib