'\" t .\" Title: xdg-dbus-proxy .\" Author: Alexander Larsson .\" Generator: DocBook XSL Stylesheets vsnapshot .\" Date: 08/12/2026 .\" Manual: User Commands .\" Source: flatpak .\" Language: Persian .\" .TH "XDG\-DBUS\-PROXY" "1" "" "flatpak" "User Commands" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "نام (NAME)" xdg\-dbus\-proxy \- پروکسی فیلترکننده اتصالات D\-Bus .SH "خلاصه دستور (SYNOPSIS)" .HP \w'\fBxdg\-dbus\-proxy\fR\ 'u \fBxdg\-dbus\-proxy\fR [\fIOPTION\fR...] [\fIADDRESS\fR\ \fIPATH\fR\ [\fIOPTION\fR...]...] .SH "توضیحات (DESCRIPTION)" .PP دستور \fBxdg\-dbus\-proxy\fR یک پروکسی فیلترکننده برای اتصالات D\-Bus است\&. آرگومان‌های آن یک یا چند جفت \fIADDRESS\fR\-\fIPATH\fR هستند که گذرگاه‌های مورد نظر برای پروکسی شدن را به همراه گزینه‌های تعیین‌کننده فیلترینگ مشخص می‌کنند\&. .SS "عملیات پایه (Basic Operation)" .PP پروکسی به سوکت دامنه یونیکس در \fIPATH\fR گوش می‌دهد و به ازای هر کلاینتی که به سوکت متصل شود، یک اتصال جدید به \fIADDRESS\fR مشخص‌شده D\-Bus (معمولاً گذرگاه نشست) باز می‌کند و داده‌ها را میان آن دو هدایت می‌نماید\&. در طول مرحله احراز هویت، تمام داده‌ها به همان صورت دریافتی هدایت می‌شوند و همچنین برای اولین بایت صفر (1 byte zero)، اعتبارنامه‌های پروکسی نیز به گذرگاه ارسال می‌شود\&. .PP پس از احراز هویت اتصال، دو حالت وجود دارد: فیلترشده و فیلترنشده\&. در حالت فیلترنشده، همه پیام‌ها همان‌طور که دریافت می‌شوند ارسال می‌گردند\&. در حالت فیلترشده، سیاست‌های مشخص اعمال می‌شوند تا تعیین کنند کدام پیام‌ها مجاز هستند و کدام پیام‌ها باید دور ریخته شوند\&. .PP فیلترینگ تنها بر سیگنال‌های خروجی، فراخوانی‌های متد و سیگنال‌های همگانی ورودی اعمال می‌شود\&. تمامی پاسخ‌ها (خطاها یا بازگشت‌های متد) تنها یک بار برای هر فراخوانی متدِ در انتظار مجاز شمرده می‌شوند و در غیر این صورت هرگز مجاز نیستند\&. .PP اگر یک کلاینت پیامی از همتای دیگری در گذرگاه دریافت کند، نام یکتای فرستنده نمایان می‌شود تا کلاینت بتواند چرخه عمر فراخواننده را از طریق سیگنال‌های NameOwnerChanged دنبال کند\&. اگر کلاینتی متدی را روی یک نام فراخوانی کند یا سیگنال همگانی از آن دریافت نماید (حتی اگر به زیرمجموعه‌ای از مسیرها یا رابط‌ها فیلتر شده باشد)، سیاست پایه آن نام از آن پس (حداقل) TALK در نظر گرفته می‌شود\&. .SS "سیاست‌ها (Policy)" .PP سیاست فیلترینگ شامل نگاشتی از نام‌های شناخته‌شده به یکی از سیاست‌های SEE، TALK یا OWN است\&. سیاست اولیه پیش‌فرض این است که کاربر تنها مجاز به ارتباط (TALK) با خود گذرگاه (org\&.freedesktop\&.DBus، یا بدون تعیین مقصد) و ارتباط (TALK) با شناسه یکتای خود است\&. تمامی کلاینت‌های دیگر نامرئی هستند\&. .PP در ادامه توضیحات مربوط به سطوح سیاست‌ها آمده است (هر سطح شامل سطوح پیش از خود نیز می‌شود): .PP SEE .RS 4 نام/شناسه در پاسخ ListNames قابل مشاهده است .sp نام/شناسه در پاسخ ListActivatableNames قابل مشاهده است .sp می‌توانید GetNameOwner را روی نام فراخوانی کنید .sp می‌توانید NameHasOwner را روی نام فراخوانی کنید .sp سیگنال‌های NameOwnerChanged را روی نام مشاهده می‌کنید .sp هنگام قطع اتصال کلاینت، سیگنال‌های NameOwnerChanged را روی شناسه مشاهده می‌کنید .sp می‌توانید متدهای GetXXX را روی نام/شناسه فراخوانی کنید تا به عنوان مثال pid همتا را به دست آورید .sp هنگام ارسال پیام به نام/شناسه، به جای NameHasNoOwner خطای AccessDenied دریافت می‌کنید .RE .PP TALK .RS 4 می‌توانید هرگونه فراخوانی متد و سیگنال را به نام/شناسه ارسال کنید .sp سیگنال‌های همگانی را از نام/شناسه دریافت خواهید کرد (در صورتی که قاعده تطبیق برای آن‌ها داشته باشید) .sp می‌توانید StartServiceByName را روی نام فراخوانی کنید .RE .PP OWN .RS 4 مجاز به فراخوانی RequestName/ReleaseName/ListQueuedOwners روی نام هستید .RE .PP سیاست با گزینه‌های \fB\-\-see\fR، \fB\-\-talk\fR و \fB\-\-own\fR مشخص می‌شود\&. نام‌های شناخته‌شده در این گزینه‌ها می‌توانند دارای پسوند \*(Aq\&.*\*(Aq باشند\&. نام "org\&.foo\&.*" با "org\&.foo"، "org\&.foo\&.bar" و "org\&.foo\&.bar\&.gazonk" مطابقت دارد، اما با "org\&.foobar" مطابقت ندارد\&. .PP سیاست‌ها برای نام‌های شناخته‌شده تعیین می‌شوند، اما بر مالک آن نام نیز تأثیر می‌گذارند، به طوری که سیاست مربوط به یک شناسه یکتا، اجتماع سیاست‌های تمام نام‌هایی است که مالک آن‌هاست\&. به دلایل فنی، سیاست برای یک نام یکتا «چسبنده» (sticky) است؛ بدین معنا که بالاترین سیاست اعطا شده توسط نامی که زمانی در مالکیت بوده حفظ می‌شود، حتی زمانی که کلاینت آن نام را آزاد کند\&. جلوگیری از این امر در یک پروکسی به شیوه‌ای عاری از شرایط رقابتی (race\-free) غیرممکن است\&. اما در عمل به ندرت مشکل‌ساز می‌شود، زیرا کلاینت‌های اندکی نام‌ها را آزاد کرده و در گذرگاه باقی می‌مانند\&. .PP علاوه بر سیاست پایه SEE/TALK/OWN، می‌توان قواعد پیچیده‌تری را در مورد فراخوانی‌های متد مجاز و سیگنال‌های همگانی قابل دریافت از نام‌های شناخته‌شده تعیین کرد\&. یک قاعده می‌تواند فراخوانی‌ها/سیگنال‌های مجاز را به یک مسیر شیء خاص یا زیردرختی از مسیرهای شیء محدود کند، و می‌تواند رابط مجاز را تا یک متد یا نام سیگنال منفرد محدود سازد\&. .PP قواعد با گزینه‌های \fB\-\-call\fR و \fB\-\-broadcast\fR مشخص می‌شوند\&. مقدار \fIRULE\fR در این گزینه‌ها رابط‌ها، متدها و مسیرهای شیء مجاز را تعیین می‌کند\&. این مقدار باید به فرمت [\fIMETHOD\fR][@\fIPATH\fR] باشد، که در آن \fIMETHOD\fR می‌تواند \*(Aq*\*(Aq یا یک رابط D\-Bus (احتمالاً با پسوند \*(Aq\&.*\*(Aq) یا یک نام متد کاملاً واجد شرایط باشد، و \fIPATH\fR یک مسیر شیء D\-Bus است (احتمالاً با پسوند \*(Aq/*\*(Aq)\&. .SH "گزینه‌ها (OPTIONS)" .PP هنگامی که گزینه‌ها چندین بار استفاده شوند، آخرین گزینه اعمال می‌شود، مگر اینکه خلاف آن مشخص شده باشد\&. .PP گزینه‌های عمومی: .PP \fB\-\-help\fR .RS 4 نمایش راهنما و خروج .RE .PP \fB\-\-version\fR .RS 4 نمایش نسخه .RE .PP \fB\-\-fd=\fR\fBFD\fR .RS 4 هنگام آماده بودن پروکسی‌ها در FD می‌نویسد، و با بسته شدن آن متوقف می‌شود\&. .RE .PP \fB\-\-args=\fR\fBFD\fR .RS 4 آرگومان‌های جداشده با نویسه تهی (nul) را از توصیف‌کننده فایل داده‌شده می‌خواند\&. این گزینه می‌تواند چندین بار برای خواندن گزینه‌ها از چندین منبع استفاده شود\&. .RE .PP گزینه‌های پروکسی: .PP این گزینه‌ها فقط بعد از یک ADDRESS قابل استفاده هستند و برای پروکسی آن نشانی اعمال می‌شوند\&. .PP \fB\-\-filter\fR .RS 4 فعال‌سازی فیلترینگ .RE .PP \fB\-\-log\fR .RS 4 فعال‌سازی ثبت گزارش (لاگ) .RE .PP \fB\-\-sloppy\-names\fR .RS 4 نمایان کردن تمام نام‌های یکتا\&. .RE .PP \fB\-\-see=\fR\fB\fINAME\fR\fR .RS 4 تنظیم سیاست SEE برای نام داده‌شده\&. .RE .PP \fB\-\-talk=\fR\fB\fINAME\fR\fR .RS 4 تنظیم سیاست TALK برای نام داده‌شده\&. .RE .PP \fB\-\-own=\fR\fB\fINAME\fR\fR .RS 4 تنظیم سیاست OWN برای نام داده‌شده\&. .RE .PP \fB\-\-call=\fR\fB\fINAME\fR\fR\fB=\fR\fB\fIRULE\fR\fR .RS 4 تنظیم یک قاعده برای فراخوانی‌ها روی نام داده‌شده\&. .RE .PP \fB\-\-broadcast=\fR\fB\fINAME\fR\fR\fB=\fR\fB\fIRULE\fR\fR .RS 4 تنظیم یک قاعده برای سیگنال‌های همگانی از نام داده‌شده\&. .RE .SH "مثال‌ها (EXAMPLES)" .PP \fB$ xdg\-dbus\-proxy \-\-fd=26 unix:path=/run/usr/1000/bus /run/usr/1000/\&.dbus\-proxy/session\-bus\-proxy \-\-filter \-\-own=org\&.gnome\&.ghex\&.* \-\-talk=ca\&.desrt\&.dconf \-\-call=org\&.freedesktop\&.portal\&.*=* \-\-broadcast=org\&.freedesktop\&.portal\&.*=@/org/freedesktop/portal/*\fR