Translation components API.

See the Weblate's Web API documentation for detailed description of the API.

GET /api/translations/documentation/booksarch-handbookjail_index/fa/units/?format=api&page=2
HTTP 200 OK
Allow: GET, POST, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "count": 92,
    "next": null,
    "previous": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/units/?format=api",
    "results": [
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "int\njail_attach(struct thread *td, struct jail_attach_args *uap)\n{\n    struct proc *p;\n    struct ucred *newcred, *oldcred;\n    struct prison *pr;\n...\n    p = td->td_proc;\n...\n    pr = prison_find(uap->jid);\n...\n    change_root(pr->pr_root, td);\n...\n    newcred->cr_prison = pr;\n    p->p_ucred = newcred;\n...\n}\n"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -6250486701003858849,
            "content_hash": -6250486701003858849,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:313",
            "context": "",
            "note": "type: delimited block . 4",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 52,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 38,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127712/?format=api",
            "priority": 100,
            "id": 1127845,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=2941cf76415c9c5f",
            "url": "https://translate-dev.freebsd.org/api/units/1127845/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.392163Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "When a process is forked from its parent process, the man:fork[2] system call uses `crhold()` to maintain the credential for the newly forked process. It inherently keep the newly forked child's credential consistent with its parent, so the child process is also jailed."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 5232469877447888724,
            "content_hash": 5232469877447888724,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:316",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 53,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 43,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127714/?format=api",
            "priority": 100,
            "id": 1127846,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=c89d77a177368f54",
            "url": "https://translate-dev.freebsd.org/api/units/1127846/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.397984Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "/usr/src/sys/kern/kern_fork.c:\np2->p_ucred = crhold(td->td_ucred);\n...\ntd2->td_ucred = crhold(p2->p_ucred);\n"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -4416722903964359959,
            "content_hash": -4416722903964359959,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:323",
            "context": "",
            "note": "type: delimited block . 4",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 54,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 8,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127716/?format=api",
            "priority": 100,
            "id": 1127847,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=42b4a5eb6ddf62e9",
            "url": "https://translate-dev.freebsd.org/api/units/1127847/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.403373Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "Restrictions"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -4326217652693749668,
            "content_hash": -4326217652693749668,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:326",
            "context": "",
            "note": "type: Title ==",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 55,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 1,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127718/?format=api",
            "priority": 100,
            "id": 1127848,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=43f62ff7562a305c",
            "url": "https://translate-dev.freebsd.org/api/units/1127848/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.479130Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "Throughout the kernel there are access restrictions relating to jailed processes. Usually, these restrictions only check whether the process is jailed, and if so, returns an error. For example:"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -3255974421327778012,
            "content_hash": -3255974421327778012,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:329",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 56,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 29,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127720/?format=api",
            "priority": 100,
            "id": 1127849,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=52d07483c2ffef24",
            "url": "https://translate-dev.freebsd.org/api/units/1127849/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.484742Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "if (jailed(td->td_ucred))\n    return (EPERM);\n"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 3608342913158452524,
            "content_hash": 3608342913158452524,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:334",
            "context": "",
            "note": "type: delimited block . 4",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 57,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 4,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127722/?format=api",
            "priority": 100,
            "id": 1127850,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=b21368c2fe9b952c",
            "url": "https://translate-dev.freebsd.org/api/units/1127850/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.490341Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "SysV IPC"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 2862600192316186374,
            "content_hash": 2862600192316186374,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:336",
            "context": "",
            "note": "type: Title ===",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 58,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 2,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127724/?format=api",
            "priority": 100,
            "id": 1127851,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=a7b9ffb54cf89f06",
            "url": "https://translate-dev.freebsd.org/api/units/1127851/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.495823Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "System V IPC is based on messages. Processes can send each other these messages which tell them how to act. The functions which deal with messages are: man:msgctl[3], man:msgget[3], man:msgsnd[3] and man:msgrcv[3]. Earlier, I mentioned that there were certain sysctls you could turn on or off in order to affect the behavior of jail. One of these sysctls was `security.jail.sysvipc_allowed`. By default, this sysctl is set to 0. If it were set to 1, it would defeat the whole purpose of having a jail; privileged users from the jail would be able to affect processes outside the jailed environment. The difference between a message and a signal is that the message only consists of the signal number."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 4080190393770106179,
            "content_hash": 4080190393770106179,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:339",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 59,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 117,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127726/?format=api",
            "priority": 100,
            "id": 1127852,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=b89fbf8b9ca0dd43",
            "url": "https://translate-dev.freebsd.org/api/units/1127852/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.501033Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "[.filename]#/usr/src/sys/kern/sysv_msg.c#:"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 5115890813890283221,
            "content_hash": 5115890813890283221,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:341",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 60,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 1,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127728/?format=api",
            "priority": 100,
            "id": 1127853,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=c6ff4b970f9d46d5",
            "url": "https://translate-dev.freebsd.org/api/units/1127853/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.506723Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "`msgget(key, msgflg)`: `msgget` returns (and possibly creates) a message descriptor that designates a message queue for use in other functions."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 3098748163555332502,
            "content_hash": 3098748163555332502,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:343",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 61,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 20,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127730/?format=api",
            "priority": 100,
            "id": 1127854,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=ab00f709711c1196",
            "url": "https://translate-dev.freebsd.org/api/units/1127854/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.580182Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "`msgctl(msgid, cmd, buf)`: Using this function, a process can query the status of a message descriptor."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 6100741742919022227,
            "content_hash": 6100741742919022227,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:344",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 62,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 16,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127732/?format=api",
            "priority": 100,
            "id": 1127855,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=d4aa304ac515f693",
            "url": "https://translate-dev.freebsd.org/api/units/1127855/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.586871Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "`msgsnd(msgid, msgp, msgsz, msgflg)`: `msgsnd` sends a message to a process."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -777231672871349731,
            "content_hash": -777231672871349731,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:345",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 63,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 11,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127734/?format=api",
            "priority": 100,
            "id": 1127856,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=7536b7e95652121d",
            "url": "https://translate-dev.freebsd.org/api/units/1127856/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.593598Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "`msgrcv(msgid, msgp, msgsz, msgtyp, msgflg)`: a process receives messages using this function"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -2985211165402693180,
            "content_hash": -2985211165402693180,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:346",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 64,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 12,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127736/?format=api",
            "priority": 100,
            "id": 1127857,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=56926642eaa481c4",
            "url": "https://translate-dev.freebsd.org/api/units/1127857/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.600085Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "In each of the system calls corresponding to these functions, there is this conditional:"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 4977791690415513173,
            "content_hash": 4977791690415513173,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:348",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 65,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 14,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127738/?format=api",
            "priority": 100,
            "id": 1127858,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=c514ab2b411b9e55",
            "url": "https://translate-dev.freebsd.org/api/units/1127858/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.674656Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "/usr/src/sys/kern/sysv_msg.c:\nif (!jail_sysvipc_allowed && jailed(td->td_ucred))\n    return (ENOSYS);\n"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -491104376070444775,
            "content_hash": -491104376070444775,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:354",
            "context": "",
            "note": "type: delimited block . 4",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 66,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 7,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127740/?format=api",
            "priority": 100,
            "id": 1127859,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=792f3f2c04ae6919",
            "url": "https://translate-dev.freebsd.org/api/units/1127859/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.682040Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "Semaphore system calls allow processes to synchronize execution by doing a set of operations atomically on a set of semaphores. Basically semaphores provide another way for processes lock resources. However, process waiting on a semaphore, that is being used, will sleep until the resources are relinquished. The following semaphore system calls are blocked inside a jail: man:semget[2], man:semctl[2] and man:semop[2]."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -5073720372180771946,
            "content_hash": -5073720372180771946,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:357",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 67,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 60,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127742/?format=api",
            "priority": 100,
            "id": 1127860,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=3996863406809b96",
            "url": "https://translate-dev.freebsd.org/api/units/1127860/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.688633Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "[.filename]#/usr/src/sys/kern/sysv_sem.c#:"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -6837744181303682262,
            "content_hash": -6837744181303682262,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:359",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 68,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 1,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127744/?format=api",
            "priority": 100,
            "id": 1127861,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=211b73e520665b2a",
            "url": "https://translate-dev.freebsd.org/api/units/1127861/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.694746Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "`semctl(semid, semnum, cmd, ...)`: `semctl` does the specified `cmd` on the semaphore queue indicated by `semid`."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -5731268266615678321,
            "content_hash": -5731268266615678321,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:361",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 69,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 16,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127746/?format=api",
            "priority": 100,
            "id": 1127862,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=307671e087e75a8f",
            "url": "https://translate-dev.freebsd.org/api/units/1127862/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.704619Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "`semget(key, nsems, flag)`: `semget` creates an array of semaphores, corresponding to `key`."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -2003990664852974168,
            "content_hash": -2003990664852974168,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:362",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 70,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 12,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127748/?format=api",
            "priority": 100,
            "id": 1127863,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=6430651ba03d55a8",
            "url": "https://translate-dev.freebsd.org/api/units/1127863/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.710879Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "`semop(semid, array, nops)`: `semop` performs a group of operations indicated by `array`, to the set of semaphores identified by `semid`."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 5989834617644839845,
            "content_hash": 5989834617644839845,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:365",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 72,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 20,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127752/?format=api",
            "priority": 100,
            "id": 1127865,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=d3202ad9680ef3a5",
            "url": "https://translate-dev.freebsd.org/api/units/1127865/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.795563Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "System V IPC allows for processes to share memory. Processes can communicate directly with each other by sharing parts of their virtual address space and then reading and writing data stored in the shared memory. These system calls are blocked within a jailed environment: man:shmdt[2], man:shmat[2], man:shmctl[2] and man:shmget[2]."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 1534099203506055106,
            "content_hash": 1534099203506055106,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:367",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 73,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 49,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127754/?format=api",
            "priority": 100,
            "id": 1127866,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=954a3718fb3027c2",
            "url": "https://translate-dev.freebsd.org/api/units/1127866/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.804141Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "[.filename]#/usr/src/sys/kern/sysv_shm.c#:"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 2708720254190416677,
            "content_hash": 2708720254190416677,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:369",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 74,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 1,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127756/?format=api",
            "priority": 100,
            "id": 1127867,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=a5974eb842ecf325",
            "url": "https://translate-dev.freebsd.org/api/units/1127867/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.876498Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "`shmctl(shmid, cmd, buf)`: `shmctl` does various control operations on the shared memory region identified by `shmid`."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 5592195854022675881,
            "content_hash": 5592195854022675881,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:371",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 75,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 16,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127758/?format=api",
            "priority": 100,
            "id": 1127868,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=cd9b7880216f0da9",
            "url": "https://translate-dev.freebsd.org/api/units/1127868/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.883703Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "`shmget(key, size, flag)`: `shmget` accesses or creates a shared memory region of `size` bytes."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -8174633782604894272,
            "content_hash": -8174633782604894272,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:372",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 76,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 14,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127760/?format=api",
            "priority": 100,
            "id": 1127869,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=0e8ddde2c2ed6fc0",
            "url": "https://translate-dev.freebsd.org/api/units/1127869/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.890341Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "`shmat(shmid, addr, flag)`: `shmat` attaches a shared memory region identified by `shmid` to the address space of a process."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 7747777264409683954,
            "content_hash": 7747777264409683954,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:373",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 77,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 19,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127762/?format=api",
            "priority": 100,
            "id": 1127870,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=eb85a25f5bfca7f2",
            "url": "https://translate-dev.freebsd.org/api/units/1127870/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.897047Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "`shmdt(addr)`: `shmdt` detaches the shared memory region previously attached at `addr`."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -1278840738368715386,
            "content_hash": -1278840738368715386,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:374",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 78,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 11,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127764/?format=api",
            "priority": 100,
            "id": 1127871,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=6e40a51fc13c0586",
            "url": "https://translate-dev.freebsd.org/api/units/1127871/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.902513Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "Sockets"
            ],
            "previous_source": "",
            "target": [
                "سوکت‌ها"
            ],
            "id_hash": -3489371552239677111,
            "content_hash": -3489371552239677111,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:375",
            "context": "",
            "note": "type: Title ===",
            "flags": "no-wrap",
            "labels": [],
            "state": 20,
            "fuzzy": false,
            "translated": true,
            "approved": false,
            "position": 79,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 1,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127766/?format=api",
            "priority": 100,
            "id": 1127872,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=4f93430f8b669149",
            "url": "https://translate-dev.freebsd.org/api/units/1127872/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.981273Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "Jail treats the man:socket[2] system call and related lower-level socket functions in a special manner. In order to determine whether a certain socket is allowed to be created, it first checks to see if the sysctl `security.jail.socket_unixiproute_only` is set. If set, sockets are only allowed to be created if the family specified is either `PF_LOCAL`, `PF_INET` or `PF_ROUTE`. Otherwise, it returns an error."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -4732418115050913858,
            "content_hash": -4732418115050913858,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:378",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 80,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 63,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127768/?format=api",
            "priority": 100,
            "id": 1127873,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=3e5312cc3bc43fbe",
            "url": "https://translate-dev.freebsd.org/api/units/1127873/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.986930Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "/usr/src/sys/kern/uipc_socket.c:\nint\nsocreate(int dom, struct socket **aso, int type, int proto,\n    struct ucred *cred, struct thread *td)\n{\n    struct protosw *prp;\n...\n    if (jailed(cred) && jail_socket_unixiproute_only &&\n        prp->pr_domain->dom_family != PF_LOCAL &&\n        prp->pr_domain->dom_family != PF_INET &&\n        prp->pr_domain->dom_family != PF_ROUTE) {\n        return (EPROTONOSUPPORT);\n    }\n...\n}\n"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -3637621164897524774,
            "content_hash": -3637621164897524774,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:396",
            "context": "",
            "note": "type: delimited block . 4",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 81,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 44,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127770/?format=api",
            "priority": 100,
            "id": 1127874,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=4d8492d2ced723da",
            "url": "https://translate-dev.freebsd.org/api/units/1127874/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.992816Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "Berkeley Packet Filter"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 2187853083053207604,
            "content_hash": 2187853083053207604,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:398",
            "context": "",
            "note": "type: Title ===",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 82,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 3,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127772/?format=api",
            "priority": 100,
            "id": 1127875,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=9e5cd0c98c213034",
            "url": "https://translate-dev.freebsd.org/api/units/1127875/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:11.998263Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "The Berkeley Packet Filter provides a raw interface to data link layers in a protocol independent fashion. BPF is now controlled by the man:devfs[8] whether it can be used in a jailed environment."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -6220800416275322453,
            "content_hash": -6220800416275322453,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:401",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 83,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 33,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127774/?format=api",
            "priority": 100,
            "id": 1127876,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=29ab46fb094ea9ab",
            "url": "https://translate-dev.freebsd.org/api/units/1127876/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:12.004813Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "Protocols"
            ],
            "previous_source": "",
            "target": [
                "قرارداد‌ها (پروتکل‌ها)"
            ],
            "id_hash": 3330477790358382675,
            "content_hash": 3330477790358382675,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:402",
            "context": "",
            "note": "type: Title ===",
            "flags": "no-wrap",
            "labels": [],
            "state": 20,
            "fuzzy": false,
            "translated": true,
            "approved": false,
            "position": 84,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 1,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127776/?format=api",
            "priority": 100,
            "id": 1127877,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=ae383be79aa3a853",
            "url": "https://translate-dev.freebsd.org/api/units/1127877/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:12.077079Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "There are certain protocols which are very common, such as TCP, UDP, IP and ICMP. IP and ICMP are on the same level: the network layer 2. There are certain precautions which are taken in order to prevent a jailed process from binding a protocol to a certain address only if the `nam` parameter is set. `nam` is a pointer to a `sockaddr` structure, which describes the address on which to bind the service. A more exact definition is that `sockaddr` \"may be used as a template for referring to the identifying tag and length of each address\". In the function `in_pcbbind_setup()`, `sin` is a pointer to a `sockaddr_in` structure, which contains the port, address, length and domain family of the socket which is to be bound. Basically, this disallows any processes from jail to be able to specify the address that does not belong to the jail in which the calling process exists."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 8016322601427626415,
            "content_hash": 8016322601427626415,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:405",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 85,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 154,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127778/?format=api",
            "priority": 100,
            "id": 1127878,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=ef3fb2ef070769af",
            "url": "https://translate-dev.freebsd.org/api/units/1127878/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:12.083173Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "/usr/src/sys/netinet/in_pcb.c:\nint\nin_pcbbind_setup(struct inpcb *inp, struct sockaddr *nam, in_addr_t *laddrp,\n    u_short *lportp, struct ucred *cred)\n{\n    ...\n    struct sockaddr_in *sin;\n    ...\n    if (nam) {\n        sin = (struct sockaddr_in *)nam;\n        ...\n        if (sin->sin_addr.s_addr != INADDR_ANY)\n            if (prison_ip(cred, 0, &sin->sin_addr.s_addr))\n                return(EINVAL);\n        ...\n        if (lport) {\n            ...\n            if (prison && prison_ip(cred, 0, &sin->sin_addr.s_addr))\n                return (EADDRNOTAVAIL);\n            ...\n        }\n    }\n    if (lport == 0) {\n        ...\n        if (laddr.s_addr != INADDR_ANY)\n            if (prison_ip(cred, 0, &laddr.s_addr))\n                return (EINVAL);\n        ...\n    }\n...\n    if (prison_ip(cred, 0, &laddr.s_addr))\n        return (EINVAL);\n...\n}\n"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -8935586237356513445,
            "content_hash": -8935586237356513445,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:442",
            "context": "",
            "note": "type: delimited block . 4",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 86,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 82,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127780/?format=api",
            "priority": 100,
            "id": 1127879,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=03fe6ba8ee7ee75b",
            "url": "https://translate-dev.freebsd.org/api/units/1127879/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:12.089810Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "You might be wondering what function `prison_ip()` does. `prison_ip()` is given three arguments, a pointer to the credential(represented by `cred`), any flags, and an IP address. It returns 1 if the IP address does NOT belong to the jail or 0 otherwise. As you can see from the code, if it is indeed an IP address not belonging to the jail, the protocol is not allowed to bind to that address."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 4275660772017737782,
            "content_hash": 4275660772017737782,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:445",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 87,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 71,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127782/?format=api",
            "priority": 100,
            "id": 1127880,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=bb5632d198309036",
            "url": "https://translate-dev.freebsd.org/api/units/1127880/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:12.095966Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "/usr/src/sys/kern/kern_jail.c:\nint\nprison_ip(struct ucred *cred, int flag, u_int32_t *ip)\n{\n    u_int32_t tmp;\n"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -4016682008452420395,
            "content_hash": -4016682008452420395,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:453",
            "context": "",
            "note": "type: delimited block . 4",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 88,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 12,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127784/?format=api",
            "priority": 100,
            "id": 1127881,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=4841e0fe9e7dacd5",
            "url": "https://translate-dev.freebsd.org/api/units/1127881/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:12.185275Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "    if (!jailed(cred))\n        return (0);\n    if (flag)\n        tmp = *ip;\n    else\n        tmp = ntohl(*ip);\n    if (tmp == INADDR_ANY) {\n        if (flag)\n            *ip = cred->cr_prison->pr_ip;\n        else\n            *ip = htonl(cred->cr_prison->pr_ip);\n        return (0);\n    }\n    if (tmp == INADDR_LOOPBACK) {\n        if (flag)\n            *ip = cred->cr_prison->pr_ip;\n        else\n            *ip = htonl(cred->cr_prison->pr_ip);\n        return (0);\n    }\n    if (cred->cr_prison->pr_ip != tmp)\n        return (1);\n    return (0);\n}\n"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -5757070790944240220,
            "content_hash": -5757070790944240220,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:478",
            "context": "",
            "note": "type: delimited block . 4",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 89,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 56,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127786/?format=api",
            "priority": 100,
            "id": 1127882,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=301ac69e2efdcda4",
            "url": "https://translate-dev.freebsd.org/api/units/1127882/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:12.198060Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "Filesystem"
            ],
            "previous_source": "",
            "target": [
                "سامانهٔ پرونده"
            ],
            "id_hash": -7615409116142431035,
            "content_hash": -7615409116142431035,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:480",
            "context": "",
            "note": "type: Title ===",
            "flags": "no-wrap",
            "labels": [],
            "state": 20,
            "fuzzy": false,
            "translated": true,
            "approved": false,
            "position": 90,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": true,
            "num_words": 1,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127788/?format=api",
            "priority": 100,
            "id": 1127883,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=1650a1c1cd0f14c5",
            "url": "https://translate-dev.freebsd.org/api/units/1127883/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:12.207667Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "Even `root` users within the jail are not allowed to unset or modify any file flags, such as immutable, append-only, and undeleteable flags, if the securelevel is greater than 0."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 1910680242308531344,
            "content_hash": 1910680242308531344,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:483",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 91,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 30,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127790/?format=api",
            "priority": 100,
            "id": 1127884,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=9a84198ea2284490",
            "url": "https://translate-dev.freebsd.org/api/units/1127884/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:12.216463Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "/usr/src/sys/ufs/ufs/ufs_vnops.c:\nstatic int\nufs_setattr(ap)\n    ...\n{\n    ...\n        if (!priv_check_cred(cred, PRIV_VFS_SYSFLAGS, 0)) {\n            if (ip->i_flags\n                & (SF_NOUNLINK | SF_IMMUTABLE | SF_APPEND)) {\n                    error = securelevel_gt(cred, 0);\n                    if (error)\n                        return (error);\n            }\n            ...\n        }\n}\n/usr/src/sys/kern/kern_priv.c\nint\npriv_check_cred(struct ucred *cred, int priv, int flags)\n{\n    ...\n    error = prison_priv_check(cred, priv);\n    if (error)\n        return (error);\n    ...\n}\n/usr/src/sys/kern/kern_jail.c\nint\nprison_priv_check(struct ucred *cred, int priv)\n{\n    ...\n    switch (priv) {\n    ...\n    case PRIV_VFS_SYSFLAGS:\n        if (jail_chflags_allowed)\n            return (0);\n        else\n            return (EPERM);\n    ...\n    }\n    ...\n}\n"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -5355022326809956027,
            "content_hash": -5355022326809956027,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:528",
            "context": "",
            "note": "type: delimited block . 4",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 92,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 80,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1127792/?format=api",
            "priority": 100,
            "id": 1127885,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=35af2390de34f145",
            "url": "https://translate-dev.freebsd.org/api/units/1127885/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-05-23T13:14:12.281032Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "`key and flag take on the same meaning as they do in msgget.`"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -4215462488937116304,
            "content_hash": -4215462488937116304,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:364",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 71,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 13,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1203084/?format=api",
            "priority": 100,
            "id": 1203087,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=457fab3366eb4d70",
            "url": "https://translate-dev.freebsd.org/api/units/1203087/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-06-08T12:04:20.552923Z"
        },
        {
            "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/fa/?format=api",
            "source": [
                "Jail is becoming the new security model. People are running potentially vulnerable servers such as Apache, BIND, and sendmail within jails, so that if an attacker gains `root` within the jail, it is only an annoyance, and not a devastation. This article mainly focuses on the internals (source code) of jail. For information on how to set up a jail see the extref:{handbook}[handbook entry on jails, jails]."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 7891161371276801963,
            "content_hash": 7891161371276801963,
            "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:53",
            "context": "",
            "note": "type: Plain text",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 4,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 67,
            "source_unit": "https://translate-dev.freebsd.org/api/units/1254566/?format=api",
            "priority": 100,
            "id": 1254571,
            "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/fa/?checksum=ed830975403cf7ab",
            "url": "https://translate-dev.freebsd.org/api/units/1254571/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2021-11-05T02:20:17.571543Z"
        }
    ]
}