الخلاصة
- تحافظ
:rawعلى التمثيل غير المفكوك، وتختار:contentأجزاء MIME، وتنتج:textنصاً بحسب قدرات التنفيذ. لا يوجد متن وحيد تراه كل الخوادم. - القرار القابل للمراجعة يحتاج هاش الرسالة وإصدار المحرك والتحويل والمحدد والمقارن والأخطاء والأجزاء المحذوفة. النجاح لا يثبت الخطر، والفشل لا يثبت الغياب.
تبدأ الحدود قبل البحث. إذا احتوت الرسالة رؤوساً فقط ولم تتبعها السطر الفارغ الفاصل، تكون مجموعة سلاسل body فارغة، فيفشل كل اختبار حتى البحث عن مفتاح فارغ. غياب المتن ليس متناً موجوداً بلا أحرف.
وعند وجوده، يصنع التحويل سلاسل المقارنة. لا تعالج كل سطر مادي على حدة، وقد تحتوي السلسلة CRLF. ثم يعمل comparator وmatch type. النتيجة المنطقية آخر السلسلة وليست وصفاً لها.
Raw يقرأ التغليف أيضاً
تعامل :raw المتن غير المفكوك كله كعنصر واحد. لا تزيل transfer encoding، وتجعل حدود multipart ورؤوس MIME الداخلية قابلة للبحث. ولا يسمح الخطأ النحوي بتجاوز المرشح ما لم ترفض البيئة الرسالة أولاً.
قد يظهر المفتاح في base64 أو boundary أو Content-Type لا في عبارة قرأها المستلم. يثبت النجاح وجود التمثيل، ولا يثبت المعنى البشري.
والعنصر الواحد يسمح لنمط أن يعبر مناطق سيفصلها تحليل MIME. الانتقال إلى content يغير السؤال لا سرعة السؤال فقط.
Content يحدد الفروع التي تدخل القياس
تختار :content حسب نوع MIME، وتهبط تكرارياً في multipart وmessage/rfc822. يختار type/subtype قيمة دقيقة، ويختار type الأنواع الفرعية، ويختار المحدد الفارغ كل الأنواع. أما الشرطات المائلة الخاطئة فلا تختار شيئاً.
يقارن كل جزء مستقلاً ولا يعبر النمط حد جزء. قد يعرض القارئ مقطعين متجاورين بينما لا يجتمعان في سلسلة واحدة. لمقدمة multipart وخاتمته سطح خاص، ولرأس الرسالة المضمّنة مسار يختلف عن أجسامها.
يفك الخادم encodings المطلوبة ويحول النص المدعوم إلى UTF-8. لكن الجزء الذي يفشل قد يعامل US-ASCII أو يحذف أو يخضع لاتفاق محلي. النتيجة false قد تعني أن المحتوى لم يدخل الاختبار.
Text سياسة تعتمد على القدرات المثبتة
:text أفضل جهد وهو الافتراضي. تنفيذ بسيط قد يساويه بـ :content "text"؛ وآخر قد يزيل markup أو يحول مستندات أو يشغل OCR. لا يفرض RFC مخرجات متطابقة.
لذلك قد يغير تحديث مكتبة أو نقل مزود نتيجة سياسة لم يتغير نصها. يكشف محول جديد كلمة قديمة، أو يفقد OCR جديد نتيجة سابقة. يجب إصدار نسخ لقدرات الاستخراج كما تصدر نسخ للقواعد.
لا يكفي سجل يقول «تطابقت القاعدة». يلزم إصدار extractor وقدراته وتحذيراته والأجزاء التي أهملها وهاش النص الناتج لإعادة القياس.
الأمن لا يساوي بحثاً نصياً
يحذر RFC من أن raw قد يطابق أوسع من المقصود، وأن النص لا يعوض نظام spam أو virus أو أي مرشح أمني. ويطلب حدود موارد حتى لا يحرم الاستخدام الخبيث للمطابقة مستخدمين آخرين من الخدمة.
قد تحذف كلمة في التغليف بريداً سليماً، وقد يمر مرفق خطر لأن نوعه لم يختَر أو فشل تحويله. لا يحدد Boolean أي الطريقين حدث.
يبقى RFC 5229 منفصلاً: متغيرات وcaptured matches. لا تملأ wildcards الخاصة بالمتن ${1} وما بعدها. هذا يمنع ذاكرة جانبية ولا يكمل الرؤية.
المصادر
- https://www.rfc-editor.org/rfc/rfc5173.html
- https://www.rfc-editor.org/rfc/rfc5173.txt
- https://www.rfc-editor.org/info/rfc5173
- https://datatracker.ietf.org/doc/rfc5173/
- https://datatracker.ietf.org/doc/rfc5173/history/
- https://datatracker.ietf.org/doc/rfc5173/references/
- https://www.rfc-editor.org/errata/rfc5173
- https://www.iana.org/assignments/sieve-extensions/sieve-extensions.xhtml
- https://www.rfc-editor.org/rfc/rfc5228.html
- https://www.rfc-editor.org/rfc/rfc5229.html
- https://www.rfc-editor.org/rfc/rfc5703.html
- https://www.rfc-editor.org/rfc/rfc2045.html
- https://www.rfc-editor.org/rfc/rfc2046.html
- https://www.rfc-editor.org/rfc/rfc3629.html
- https://heng.lu/on-reality-layers-symbolic-power-and-why-clarity-feels-so-hostile/
- https://heng.lu/minimum-initial-specification-localized-future-decision-voluntary-adoption-internet-coordination-system/
- https://heng.lu/running-code-primary-the-patch-needed-to-preserve-the-internet-original-design/
إحاطة الأعضاء
سياق أعمق للملف الشخصي
سجّل الدخول بمستوى العضوية المناسب لفتح الإحاطة الكاملة وملاحظات المصادر.
للدائرة الاستراتيجية فقط
الدائرة الاستراتيجية
مفتوح لجميع القراء. افتح إحاطات الملف الشخصي بعد الانضمام وتسجيل الدخول.
انضم إلى الدائرة الاستراتيجيةلأعضاء تحالف القيادات فقط
تحالف القيادات
لأصحاب الأصول الفكرية المؤهلين وللإدارة؛ سجّل الدخول للوصول إلى إحاطات التحالف.
انضم إلى تحالف القيادات
