Units
Translation components API.
See the Weblate's Web API documentation for detailed description of the API.
GET /api/translations/documentation/booksarch-handbookjail_index/ko/units/?format=api&page=2
https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/units/?format=api", "results": [ { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?format=api", "source": [ "/usr/src/sys/kern/kern_jail.c\nint\njail(struct thread *td, struct jail_args *uap)\n{\n...\n struct jail_attach_args jaa;\n...\n error = jail_attach(td, &jaa);\n if (error)\n goto e_dropprref;\n...\n}\n" ], "previous_source": "", "target": [ "" ], "id_hash": 5998018216358103867, "content_hash": 5998018216358103867, "location": "documentation/content/en/books/arch-handbook/jail/_index.adoc:295", "context": "", "note": "type: delimited block . 4", "flags": "no-wrap", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 51, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 24, "source_unit": "https://translate-dev.freebsd.org/api/units/1127710/?format=api", "priority": 100, "id": 1465089, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=d33d3dc9f658cb3b", "url": "https://translate-dev.freebsd.org/api/units/1465089/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:17.689836Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465090, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=2941cf76415c9c5f", "url": "https://translate-dev.freebsd.org/api/units/1465090/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:17.695485Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465091, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=c89d77a177368f54", "url": "https://translate-dev.freebsd.org/api/units/1465091/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:17.706890Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465092, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=42b4a5eb6ddf62e9", "url": "https://translate-dev.freebsd.org/api/units/1465092/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:17.781018Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465093, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=43f62ff7562a305c", "url": "https://translate-dev.freebsd.org/api/units/1465093/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:17.786734Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465094, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=52d07483c2ffef24", "url": "https://translate-dev.freebsd.org/api/units/1465094/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:17.795293Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465095, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=b21368c2fe9b952c", "url": "https://translate-dev.freebsd.org/api/units/1465095/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:17.809030Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465096, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=a7b9ffb54cf89f06", "url": "https://translate-dev.freebsd.org/api/units/1465096/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:17.817096Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465097, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=b89fbf8b9ca0dd43", "url": "https://translate-dev.freebsd.org/api/units/1465097/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:17.821489Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465098, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=c6ff4b970f9d46d5", "url": "https://translate-dev.freebsd.org/api/units/1465098/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:17.886889Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465099, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=ab00f709711c1196", "url": "https://translate-dev.freebsd.org/api/units/1465099/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:17.890507Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465100, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=d4aa304ac515f693", "url": "https://translate-dev.freebsd.org/api/units/1465100/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:17.894627Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465101, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=7536b7e95652121d", "url": "https://translate-dev.freebsd.org/api/units/1465101/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:17.898711Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465102, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=56926642eaa481c4", "url": "https://translate-dev.freebsd.org/api/units/1465102/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:17.902200Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465103, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=c514ab2b411b9e55", "url": "https://translate-dev.freebsd.org/api/units/1465103/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:17.905124Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465104, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=792f3f2c04ae6919", "url": "https://translate-dev.freebsd.org/api/units/1465104/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:17.908315Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465105, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=3996863406809b96", "url": "https://translate-dev.freebsd.org/api/units/1465105/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:17.976736Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465106, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=211b73e520665b2a", "url": "https://translate-dev.freebsd.org/api/units/1465106/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:17.982123Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465107, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=307671e087e75a8f", "url": "https://translate-dev.freebsd.org/api/units/1465107/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:17.986761Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465108, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=6430651ba03d55a8", "url": "https://translate-dev.freebsd.org/api/units/1465108/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:17.990172Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465109, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=457fab3366eb4d70", "url": "https://translate-dev.freebsd.org/api/units/1465109/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:17.993760Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465110, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=d3202ad9680ef3a5", "url": "https://translate-dev.freebsd.org/api/units/1465110/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:18.083173Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465111, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=954a3718fb3027c2", "url": "https://translate-dev.freebsd.org/api/units/1465111/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:18.087132Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465112, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=a5974eb842ecf325", "url": "https://translate-dev.freebsd.org/api/units/1465112/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:18.090899Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465113, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=cd9b7880216f0da9", "url": "https://translate-dev.freebsd.org/api/units/1465113/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:18.094380Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465114, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=0e8ddde2c2ed6fc0", "url": "https://translate-dev.freebsd.org/api/units/1465114/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:18.097474Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465115, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=eb85a25f5bfca7f2", "url": "https://translate-dev.freebsd.org/api/units/1465115/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:18.100237Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465116, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=6e40a51fc13c0586", "url": "https://translate-dev.freebsd.org/api/units/1465116/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:18.103600Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 0, "fuzzy": false, "translated": false, "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": 1465117, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=4f93430f8b669149", "url": "https://translate-dev.freebsd.org/api/units/1465117/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:18.106950Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465118, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=3e5312cc3bc43fbe", "url": "https://translate-dev.freebsd.org/api/units/1465118/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:18.175857Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465119, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=4d8492d2ced723da", "url": "https://translate-dev.freebsd.org/api/units/1465119/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:18.191248Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465120, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=9e5cd0c98c213034", "url": "https://translate-dev.freebsd.org/api/units/1465120/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:18.195125Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465121, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=29ab46fb094ea9ab", "url": "https://translate-dev.freebsd.org/api/units/1465121/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:18.198551Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465122, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=ae383be79aa3a853", "url": "https://translate-dev.freebsd.org/api/units/1465122/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:18.278045Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465123, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=ef3fb2ef070769af", "url": "https://translate-dev.freebsd.org/api/units/1465123/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:18.295334Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465124, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=03fe6ba8ee7ee75b", "url": "https://translate-dev.freebsd.org/api/units/1465124/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:18.300197Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465125, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=bb5632d198309036", "url": "https://translate-dev.freebsd.org/api/units/1465125/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:18.304800Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465126, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=4841e0fe9e7dacd5", "url": "https://translate-dev.freebsd.org/api/units/1465126/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:18.308820Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465127, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=301ac69e2efdcda4", "url": "https://translate-dev.freebsd.org/api/units/1465127/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:18.379246Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 0, "fuzzy": false, "translated": false, "approved": false, "position": 90, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 1, "source_unit": "https://translate-dev.freebsd.org/api/units/1127788/?format=api", "priority": 100, "id": 1465128, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=1650a1c1cd0f14c5", "url": "https://translate-dev.freebsd.org/api/units/1465128/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:18.385352Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465129, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=9a84198ea2284490", "url": "https://translate-dev.freebsd.org/api/units/1465129/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:18.397451Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/booksarch-handbookjail_index/ko/?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": 1465130, "web_url": "https://translate-dev.freebsd.org/translate/documentation/booksarch-handbookjail_index/ko/?checksum=35af2390de34f145", "url": "https://translate-dev.freebsd.org/api/units/1465130/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-03-06T23:13:18.401414Z" } ] }{ "count": 92, "next": null, "previous": "