msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2015-01-01 22:50+0900\n"
+"POT-Creation-Date: 2015-01-04 23:49+0900\n"
"PO-Revision-Date: 2015-01-04 21:00+0900\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
msgstr "FANOTIFY"
#. type: TH
-#: build/C/man7/fanotify.7:25
-#, no-wrap
-msgid "2014-05-21"
-msgstr "2014-05-21"
+#: build/C/man7/fanotify.7:25 build/C/man7/inotify.7:27
+#, fuzzy, no-wrap
+#| msgid "2014-10-02"
+msgid "2014-12-31"
+msgstr "2014-10-02"
#. type: TH
#: build/C/man7/fanotify.7:25 build/C/man2/fanotify_init.2:24
#. type: Plain text
#: build/C/man7/fanotify.7:490
-msgid "As of Linux 3.15, the following bugs exist:"
+msgid "As of Linux 3.17, the following bugs exist:"
msgstr ""
#. type: IP
#: build/C/man7/fanotify.7:490 build/C/man7/fanotify.7:499
+#: build/C/man7/fanotify.7:503 build/C/man7/fanotify.7:512
#: build/C/man2/fanotify_init.2:242 build/C/man2/fanotify_init.2:250
#: build/C/man2/fanotify_mark.2:195 build/C/man2/fanotify_mark.2:201
#: build/C/man2/fanotify_mark.2:209 build/C/man2/fanotify_mark.2:215
msgid "*"
msgstr "*"
-#. FIXME . A patch was proposed.
#. type: Plain text
#: build/C/man7/fanotify.7:499
msgid ""
+"On Linux, a filesystem object may be accessible through multiple paths, for "
+"example, a part of a filesystem may be remounted using the I<--bind> option "
+"of B<mount>(8). A listener that marked a mount will be notified only of "
+"events that were triggered for a filesystem object using the same mount. "
+"Any other event will pass unnoticed."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man7/fanotify.7:503
+msgid "Calling B<fallocate>(2) does not create any fanotify events."
+msgstr ""
+
+#. FIXME . A patch was proposed.
+#. type: Plain text
+#: build/C/man7/fanotify.7:512
+msgid ""
"When an event is generated, no check is made to see whether the user ID of "
"the receiving process has authorization to read or write the file before "
"passing a file descriptor for that file. This poses a security risk, when "
msgstr ""
#. type: Plain text
-#: build/C/man7/fanotify.7:509
+#: build/C/man7/fanotify.7:522
msgid ""
"If a call to B<read>(2) processes multiple events from the fanotify queue "
"and an error occurs, the return value will be the total length of the events "
msgstr ""
#. type: SH
-#: build/C/man7/fanotify.7:509 build/C/man7/inotify.7:811
+#: build/C/man7/fanotify.7:522 build/C/man7/inotify.7:815
#, no-wrap
msgid "EXAMPLE"
msgstr "例"
#. type: Plain text
-#: build/C/man7/fanotify.7:519
+#: build/C/man7/fanotify.7:532
msgid ""
"The following program demonstrates the usage of the fanotify API. It marks "
"the mount point passed as a command-line argument and waits for events of "
msgstr ""
#. type: Plain text
-#: build/C/man7/fanotify.7:529
+#: build/C/man7/fanotify.7:542
msgid ""
"The following output was recorded while editing the file I</home/user/temp/"
"notes>. Before the file was opened, a B<FAN_OPEN_PERM> event occurred. "
msgstr ""
#. type: SS
-#: build/C/man7/fanotify.7:529 build/C/man7/inotify.7:834
+#: build/C/man7/fanotify.7:542 build/C/man7/inotify.7:838
#, no-wrap
msgid "Example output"
msgstr "出力例"
#. type: Plain text
-#: build/C/man7/fanotify.7:537
+#: build/C/man7/fanotify.7:550
#, no-wrap
msgid ""
"# ./fanotify_example /home\n"
"FAN_CLOSE_WRITE: File /home/user/temp/notes\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:539 build/C/man7/inotify.7:846
+#: build/C/man7/fanotify.7:552 build/C/man7/inotify.7:850
#, no-wrap
msgid "Listening for events stopped.\n"
msgstr "Listening for events stopped.\n"
#. type: SS
-#: build/C/man7/fanotify.7:541 build/C/man7/inotify.7:848
+#: build/C/man7/fanotify.7:554 build/C/man7/inotify.7:852
#, no-wrap
msgid "Program source"
msgstr "プログラムソース"
#. type: Plain text
-#: build/C/man7/fanotify.7:552
+#: build/C/man7/fanotify.7:565
#, no-wrap
msgid ""
"#define _GNU_SOURCE /* Needed to get O_LARGEFILE definition */\n"
"#include E<lt>unistd.hE<gt>\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:554
+#: build/C/man7/fanotify.7:567
#, no-wrap
msgid "/* Read all available fanotify events from the file descriptor 'fd' */\n"
msgstr "/* Read all available fanotify events from the file descriptor 'fd' */\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:565
+#: build/C/man7/fanotify.7:578
#, no-wrap
msgid ""
"static void\n"
" struct fanotify_response response;\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:567
+#: build/C/man7/fanotify.7:580
#, no-wrap
msgid " /* Loop while events can be read from fanotify file descriptor */\n"
msgstr " /* Loop while events can be read from fanotify file descriptor */\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:569
+#: build/C/man7/fanotify.7:582
#, no-wrap
msgid " for(;;) {\n"
msgstr " for(;;) {\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:571
+#: build/C/man7/fanotify.7:584
#, no-wrap
msgid " /* Read some events */\n"
msgstr " /* Read some events */\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:577
+#: build/C/man7/fanotify.7:590
#, no-wrap
msgid ""
" len = read(fd, (void *) &buf, sizeof(buf));\n"
" }\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:579
+#: build/C/man7/fanotify.7:592
#, no-wrap
msgid " /* Check if end of available data reached */\n"
msgstr " /* Check if end of available data reached */\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:582 build/C/man7/inotify.7:897
+#: build/C/man7/fanotify.7:595 build/C/man7/inotify.7:901
#, no-wrap
msgid ""
" if (len E<lt>= 0)\n"
" break;\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:584
+#: build/C/man7/fanotify.7:597
#, no-wrap
msgid " /* Point to the first event in the buffer */\n"
msgstr " /* Point to the first event in the buffer */\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:586
+#: build/C/man7/fanotify.7:599
#, no-wrap
msgid " metadata = buf;\n"
msgstr " metadata = buf;\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:588 build/C/man7/inotify.7:899
+#: build/C/man7/fanotify.7:601 build/C/man7/inotify.7:903
#, no-wrap
msgid " /* Loop over all events in the buffer */\n"
msgstr " /* Loop over all events in the buffer */\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:590
+#: build/C/man7/fanotify.7:603
#, no-wrap
msgid " while (FAN_EVENT_OK(metadata, len)) {\n"
msgstr " while (FAN_EVENT_OK(metadata, len)) {\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:592
+#: build/C/man7/fanotify.7:605
#, no-wrap
msgid " /* Check that run-time and compile-time structures match */\n"
msgstr " /* Check that run-time and compile-time structures match */\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:598
+#: build/C/man7/fanotify.7:611
#, no-wrap
msgid ""
" if (metadata-E<gt>vers != FANOTIFY_METADATA_VERSION) {\n"
" }\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:602
+#: build/C/man7/fanotify.7:615
#, no-wrap
msgid ""
" /* metadata-E<gt>fd contains either FAN_NOFD, indicating a\n"
" integer). Here, we simply ignore queue overflow. */\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:604
+#: build/C/man7/fanotify.7:617
#, no-wrap
msgid " if (metadata-E<gt>fd E<gt>= 0) {\n"
msgstr " if (metadata-E<gt>fd E<gt>= 0) {\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:606
+#: build/C/man7/fanotify.7:619
#, no-wrap
msgid " /* Handle open permission event */\n"
msgstr " /* Handle open permission event */\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:609
+#: build/C/man7/fanotify.7:622
#, no-wrap
msgid ""
" if (metadata-E<gt>mask & FAN_OPEN_PERM) {\n"
" printf(\"FAN_OPEN_PERM: \");\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:611
+#: build/C/man7/fanotify.7:624
#, no-wrap
msgid " /* Allow file to be opened */\n"
msgstr " /* Allow file to be opened */\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:617
+#: build/C/man7/fanotify.7:630
#, no-wrap
msgid ""
" response.fd = metadata-E<gt>fd;\n"
" }\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:619
+#: build/C/man7/fanotify.7:632
#, no-wrap
msgid " /* Handle closing of writable file event */\n"
msgstr " /* Handle closing of writable file event */\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:622
+#: build/C/man7/fanotify.7:635
#, no-wrap
msgid ""
" if (metadata-E<gt>mask & FAN_CLOSE_WRITE)\n"
" printf(\"FAN_CLOSE_WRITE: \");\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:624
+#: build/C/man7/fanotify.7:637
#, no-wrap
msgid " /* Retrieve and print pathname of the accessed file */\n"
msgstr " /* Retrieve and print pathname of the accessed file */\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:633
+#: build/C/man7/fanotify.7:646
#, no-wrap
msgid ""
" snprintf(procfd_path, sizeof(procfd_path),\n"
" }\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:636
+#: build/C/man7/fanotify.7:649
#, no-wrap
msgid ""
" path[path_len] = '\\e0';\n"
" printf(\"File %s\\en\", path);\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:638
+#: build/C/man7/fanotify.7:651
#, no-wrap
msgid " /* Close the file descriptor of the event */\n"
msgstr " /* Close the file descriptor of the event */\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:641
+#: build/C/man7/fanotify.7:654
#, no-wrap
msgid ""
" close(metadata-E<gt>fd);\n"
" }\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:643
+#: build/C/man7/fanotify.7:656
#, no-wrap
msgid " /* Advance to next event */\n"
msgstr " /* Advance to next event */\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:648
+#: build/C/man7/fanotify.7:661
#, no-wrap
msgid ""
" metadata = FAN_EVENT_NEXT(metadata, len);\n"
"}\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:656
+#: build/C/man7/fanotify.7:669
#, no-wrap
msgid ""
"int\n"
" struct pollfd fds[2];\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:658
+#: build/C/man7/fanotify.7:671
#, no-wrap
msgid " /* Check mount point is supplied */\n"
msgstr " /* Check mount point is supplied */\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:663
+#: build/C/man7/fanotify.7:676
#, no-wrap
msgid ""
" if (argc != 2) {\n"
" }\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:665
+#: build/C/man7/fanotify.7:678
#, no-wrap
msgid " printf(\"Press enter key to terminate.\\en\");\n"
msgstr " printf(\"Press enter key to terminate.\\en\");\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:667
+#: build/C/man7/fanotify.7:680
#, no-wrap
msgid " /* Create the file descriptor for accessing the fanotify API */\n"
msgstr " /* Create the file descriptor for accessing the fanotify API */\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:674
+#: build/C/man7/fanotify.7:687
#, no-wrap
msgid ""
" fd = fanotify_init(FAN_CLOEXEC | FAN_CLASS_CONTENT | FAN_NONBLOCK,\n"
" }\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:679
+#: build/C/man7/fanotify.7:692
#, no-wrap
msgid ""
" /* Mark the mount for:\n"
" file descriptor */\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:686
-#, no-wrap
+#: build/C/man7/fanotify.7:699
+#, fuzzy, no-wrap
+#| msgid ""
+#| " if (fanotify_mark(fd, FAN_MARK_ADD | FAN_MARK_MOUNT,\n"
+#| " FAN_OPEN_PERM | FAN_CLOSE_WRITE, -1,\n"
+#| " argv[1]) == -1) {\n"
+#| " perror(\"fanotify_mark\");\n"
+#| " exit(EXIT_FAILURE);\n"
+#| " }\n"
msgid ""
" if (fanotify_mark(fd, FAN_MARK_ADD | FAN_MARK_MOUNT,\n"
-" FAN_OPEN_PERM | FAN_CLOSE_WRITE, -1,\n"
+" FAN_OPEN_PERM | FAN_CLOSE_WRITE, AT_FDCWD,\n"
" argv[1]) == -1) {\n"
" perror(\"fanotify_mark\");\n"
" exit(EXIT_FAILURE);\n"
" }\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:688 build/C/man7/inotify.7:985
+#: build/C/man7/fanotify.7:701 build/C/man7/inotify.7:989
#, no-wrap
msgid " /* Prepare for polling */\n"
msgstr " /* Prepare for polling */\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:690 build/C/man7/inotify.7:987
+#: build/C/man7/fanotify.7:703 build/C/man7/inotify.7:991
#, no-wrap
msgid " nfds = 2;\n"
msgstr " nfds = 2;\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:692 build/C/man7/inotify.7:989
+#: build/C/man7/fanotify.7:705 build/C/man7/inotify.7:993
#, no-wrap
msgid " /* Console input */\n"
msgstr " /* Console input */\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:695 build/C/man7/inotify.7:992
+#: build/C/man7/fanotify.7:708 build/C/man7/inotify.7:996
#, no-wrap
msgid ""
" fds[0].fd = STDIN_FILENO;\n"
" fds[0].events = POLLIN;\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:697
+#: build/C/man7/fanotify.7:710
#, no-wrap
msgid " /* Fanotify input */\n"
msgstr " /* Fanotify input */\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:700 build/C/man7/inotify.7:997
+#: build/C/man7/fanotify.7:713 build/C/man7/inotify.7:1001
#, no-wrap
msgid ""
" fds[1].fd = fd;\n"
" fds[1].events = POLLIN;\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:702
+#: build/C/man7/fanotify.7:715
#, no-wrap
msgid " /* This is the loop to wait for incoming events */\n"
msgstr " /* This is the loop to wait for incoming events */\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:704
+#: build/C/man7/fanotify.7:717
#, no-wrap
msgid " printf(\"Listening for events.\\en\");\n"
msgstr " printf(\"Listening for events.\\en\");\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:710
+#: build/C/man7/fanotify.7:723
#, no-wrap
msgid ""
" while (1) {\n"
" continue; /* Restart poll() */\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:714
+#: build/C/man7/fanotify.7:727
#, no-wrap
msgid ""
" perror(\"poll\"); /* Unexpected error */\n"
" }\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:717
+#: build/C/man7/fanotify.7:730
#, no-wrap
msgid ""
" if (poll_num E<gt> 0) {\n"
" if (fds[0].revents & POLLIN) {\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:719
+#: build/C/man7/fanotify.7:732
#, no-wrap
msgid " /* Console input is available: empty stdin and quit */\n"
msgstr " /* Console input is available: empty stdin and quit */\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:724 build/C/man7/inotify.7:1020
+#: build/C/man7/fanotify.7:737 build/C/man7/inotify.7:1024
#, no-wrap
msgid ""
" while (read(STDIN_FILENO, &buf, 1) E<gt> 0 && buf != '\\en')\n"
" }\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:726 build/C/man7/inotify.7:1022
+#: build/C/man7/fanotify.7:739 build/C/man7/inotify.7:1026
#, no-wrap
msgid " if (fds[1].revents & POLLIN) {\n"
msgstr " if (fds[1].revents & POLLIN) {\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:728
+#: build/C/man7/fanotify.7:741
#, no-wrap
msgid " /* Fanotify events are available */\n"
msgstr " /* Fanotify events are available */\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:733
+#: build/C/man7/fanotify.7:746
#, no-wrap
msgid ""
" handle_events(fd);\n"
" }\n"
#. type: Plain text
-#: build/C/man7/fanotify.7:737
+#: build/C/man7/fanotify.7:750
#, no-wrap
msgid ""
" printf(\"Listening for events stopped.\\en\");\n"
"}\n"
#. type: SH
-#: build/C/man7/fanotify.7:738 build/C/man2/fanotify_init.2:260
-#: build/C/man2/fanotify_mark.2:331 build/C/man7/inotify.7:1040
+#: build/C/man7/fanotify.7:751 build/C/man2/fanotify_init.2:260
+#: build/C/man2/fanotify_mark.2:331 build/C/man7/inotify.7:1044
#: build/C/man2/inotify_add_watch.2:120 build/C/man2/inotify_init.2:103
#: build/C/man2/inotify_rm_watch.2:71
#, no-wrap
msgstr "関連項目"
#. type: Plain text
-#: build/C/man7/fanotify.7:743
+#: build/C/man7/fanotify.7:756
msgid "B<fanotify_init>(2), B<fanotify_mark>(2), B<inotify>(7)"
msgstr "B<fanotify_init>(2), B<fanotify_mark>(2), B<inotify>(7)"
#. type: SH
-#: build/C/man7/fanotify.7:743 build/C/man2/fanotify_init.2:263
-#: build/C/man2/fanotify_mark.2:334 build/C/man7/inotify.7:1053
+#: build/C/man7/fanotify.7:756 build/C/man2/fanotify_init.2:263
+#: build/C/man2/fanotify_mark.2:334 build/C/man7/inotify.7:1057
#: build/C/man2/inotify_add_watch.2:124 build/C/man2/inotify_init.2:107
#: build/C/man2/inotify_rm_watch.2:75
#, no-wrap
msgstr "この文書について"
#. type: Plain text
-#: build/C/man7/fanotify.7:751 build/C/man2/fanotify_init.2:271
-#: build/C/man2/fanotify_mark.2:342 build/C/man7/inotify.7:1061
+#: build/C/man7/fanotify.7:764 build/C/man2/fanotify_init.2:271
+#: build/C/man2/fanotify_mark.2:342 build/C/man7/inotify.7:1065
#: build/C/man2/inotify_add_watch.2:132 build/C/man2/inotify_init.2:115
#: build/C/man2/inotify_rm_watch.2:83
+#, fuzzy
+#| msgid ""
+#| "This page is part of release 3.75 of the Linux I<man-pages> project. A "
+#| "description of the project, information about reporting bugs, and the "
+#| "latest version of this page, can be found at \\%http://www.kernel.org/doc/"
+#| "man-pages/."
msgid ""
-"This page is part of release 3.75 of the Linux I<man-pages> project. A "
+"This page is part of release 3.76 of the Linux I<man-pages> project. A "
"description of the project, information about reporting bugs, and the latest "
"version of this page, can be found at \\%http://www.kernel.org/doc/man-"
"pages/."
msgid "INOTIFY"
msgstr "INOTIFY"
-#. type: TH
-#: build/C/man7/inotify.7:27
-#, no-wrap
-msgid "2014-09-06"
-msgstr "2014-09-06"
-
#. type: Plain text
#: build/C/man7/inotify.7:30
msgid "inotify - monitoring filesystem events"
#. type: Plain text
#: build/C/man7/inotify.7:224
msgid "File or directory not opened for writing was closed."
-msgstr "書き込み用としてはオープンされていないファイルやディレクトリがクローズされた。"
+msgstr ""
+"書き込み用としてはオープンされていないファイルやディレクトリがクローズされ"
+"た。"
#. type: TP
#: build/C/man7/inotify.7:224
"ベントは次の B<read>(2) を行わないと取得できない可能性も考慮に入れる必要があ"
"る。"
+#. type: Plain text
+#: build/C/man7/inotify.7:758
+msgid ""
+"As of kernel 3.17, calling B<fallocate>(2) does not create any inotify "
+"events."
+msgstr ""
+
#. FIXME . kernel commit 611da04f7a31b2208e838be55a42c7a1310ae321
#. implies that unmount events were buggy 2.6.11 to 2.6.36
#. type: Plain text
-#: build/C/man7/inotify.7:762
+#: build/C/man7/inotify.7:766
msgid "In kernels before 2.6.16, the B<IN_ONESHOT> I<mask> flag does not work."
msgstr "2.6.16 以前のカーネルでは B<IN_ONESHOT> I<mask> フラグが働かない。"
#. type: Plain text
-#: build/C/man7/inotify.7:772
+#: build/C/man7/inotify.7:776
msgid ""
"As originally designed and implemented, the B<IN_ONESHOT> flag did not cause "
"an B<IN_IGNORED> event to be generated when the watch was dropped after one "
#. commit 1c17d18e3775485bf1e0ce79575eb637a94494a2
#. type: Plain text
-#: build/C/man7/inotify.7:781
+#: build/C/man7/inotify.7:785
msgid ""
"Before kernel 2.6.25, the kernel code that was intended to coalesce "
"successive identical events (i.e., the two most recent events could "
#. FIXME . https://bugzilla.kernel.org/show_bug.cgi?id=77111
#. type: Plain text
-#: build/C/man7/inotify.7:811
+#: build/C/man7/inotify.7:815
msgid ""
"When a watch descriptor is removed by calling B<inotify_rm_watch>(2) (or "
"because a watch file is deleted or the filesystem that contains it is "
msgstr ""
#. type: Plain text
-#: build/C/man7/inotify.7:819
+#: build/C/man7/inotify.7:823
msgid ""
"The following program demonstrates the usage of the inotify API. It marks "
"the directories passed as a command-line arguments and waits for events of "
"B<IN_CLOSE_NOWRITE> B<IN_CLOSE_WRITE> のイベントを待つ。"
#. type: Plain text
-#: build/C/man7/inotify.7:834
+#: build/C/man7/inotify.7:838
msgid ""
"The following output was recorded while editing the file I</home/user/temp/"
"foo> and listing directory I</tmp>. Before the file and the directory were "
"と、プログラムの実行は終了する。"
#. type: Plain text
-#: build/C/man7/inotify.7:844
+#: build/C/man7/inotify.7:848
#, no-wrap
msgid ""
"$ B<./a.out /tmp /home/user/temp>\n"
"IN_CLOSE_NOWRITE: /tmp/ [directory]\n"
#. type: Plain text
-#: build/C/man7/inotify.7:856
+#: build/C/man7/inotify.7:860
#, no-wrap
msgid ""
"#include E<lt>errno.hE<gt>\n"
"#include E<lt>unistd.hE<gt>\n"
#. type: Plain text
-#: build/C/man7/inotify.7:862
+#: build/C/man7/inotify.7:866
#, no-wrap
msgid ""
"/* Read all available inotify events from the file descriptor 'fd'.\n"
" Entry 0 of wd and argv is unused. */\n"
#. type: Plain text
-#: build/C/man7/inotify.7:871
+#: build/C/man7/inotify.7:875
#, no-wrap
msgid ""
"static void\n"
" struct inotify_event. */\n"
#. type: Plain text
-#: build/C/man7/inotify.7:878
+#: build/C/man7/inotify.7:882
#, no-wrap
msgid ""
" char buf[4096]\n"
" char *ptr;\n"
#. type: Plain text
-#: build/C/man7/inotify.7:880
+#: build/C/man7/inotify.7:884
#, no-wrap
msgid " /* Loop while events can be read from inotify file descriptor. */\n"
msgstr " /* Loop while events can be read from inotify file descriptor. */\n"
#. type: Plain text
-#: build/C/man7/inotify.7:882
+#: build/C/man7/inotify.7:886
#, no-wrap
msgid " for (;;) {\n"
msgstr " for (;;) {\n"
#. type: Plain text
-#: build/C/man7/inotify.7:884
+#: build/C/man7/inotify.7:888
#, no-wrap
msgid " /* Read some events. */\n"
msgstr " /* Read some events. */\n"
#. type: Plain text
-#: build/C/man7/inotify.7:890
+#: build/C/man7/inotify.7:894
#, no-wrap
msgid ""
" len = read(fd, buf, sizeof buf);\n"
" }\n"
#. type: Plain text
-#: build/C/man7/inotify.7:894
+#: build/C/man7/inotify.7:898
#, no-wrap
msgid ""
" /* If the nonblocking read() found no events to read, then\n"
" we exit the loop. */\n"
#. type: Plain text
-#: build/C/man7/inotify.7:902
+#: build/C/man7/inotify.7:906
#, no-wrap
msgid ""
" for (ptr = buf; ptr E<lt> buf + len;\n"
" ptr += sizeof(struct inotify_event) + event-E<gt>len) {\n"
#. type: Plain text
-#: build/C/man7/inotify.7:904
+#: build/C/man7/inotify.7:908
#, no-wrap
msgid " event = (const struct inotify_event *) ptr;\n"
msgstr " event = (const struct inotify_event *) ptr;\n"
#. type: Plain text
-#: build/C/man7/inotify.7:906
+#: build/C/man7/inotify.7:910
#, no-wrap
msgid " /* Print event type */\n"
msgstr " /* Print event type */\n"
#. type: Plain text
-#: build/C/man7/inotify.7:913
+#: build/C/man7/inotify.7:917
#, no-wrap
msgid ""
" if (event-E<gt>mask & IN_OPEN)\n"
" printf(\"IN_CLOSE_WRITE: \");\n"
#. type: Plain text
-#: build/C/man7/inotify.7:915
+#: build/C/man7/inotify.7:919
#, no-wrap
msgid " /* Print the name of the watched directory */\n"
msgstr " /* Print the name of the watched directory */\n"
#. type: Plain text
-#: build/C/man7/inotify.7:922
+#: build/C/man7/inotify.7:926
#, no-wrap
msgid ""
" for (i = 1; i E<lt> argc; ++i) {\n"
" }\n"
#. type: Plain text
-#: build/C/man7/inotify.7:924
+#: build/C/man7/inotify.7:928
#, no-wrap
msgid " /* Print the name of the file */\n"
msgstr " /* Print the name of the file */\n"
#. type: Plain text
-#: build/C/man7/inotify.7:927
+#: build/C/man7/inotify.7:931
#, no-wrap
msgid ""
" if (event-E<gt>len)\n"
" printf(\"%s\", event-E<gt>name);\n"
#. type: Plain text
-#: build/C/man7/inotify.7:929
+#: build/C/man7/inotify.7:933
#, no-wrap
msgid " /* Print type of filesystem object */\n"
msgstr " /* Print type of filesystem object */\n"
#. type: Plain text
-#: build/C/man7/inotify.7:937
+#: build/C/man7/inotify.7:941
#, no-wrap
msgid ""
" if (event-E<gt>mask & IN_ISDIR)\n"
"}\n"
#. type: Plain text
-#: build/C/man7/inotify.7:946
+#: build/C/man7/inotify.7:950
#, no-wrap
msgid ""
"int\n"
" struct pollfd fds[2];\n"
#. type: Plain text
-#: build/C/man7/inotify.7:951
+#: build/C/man7/inotify.7:955
#, no-wrap
msgid ""
" if (argc E<lt> 2) {\n"
" }\n"
#. type: Plain text
-#: build/C/man7/inotify.7:953
+#: build/C/man7/inotify.7:957
#, no-wrap
msgid " printf(\"Press ENTER key to terminate.\\en\");\n"
msgstr " printf(\"Press ENTER key to terminate.\\en\");\n"
#. type: Plain text
-#: build/C/man7/inotify.7:955
+#: build/C/man7/inotify.7:959
#, no-wrap
msgid " /* Create the file descriptor for accessing the inotify API */\n"
msgstr " /* Create the file descriptor for accessing the inotify API */\n"
#. type: Plain text
-#: build/C/man7/inotify.7:961
+#: build/C/man7/inotify.7:965
#, no-wrap
msgid ""
" fd = inotify_init1(IN_NONBLOCK);\n"
" }\n"
#. type: Plain text
-#: build/C/man7/inotify.7:963
+#: build/C/man7/inotify.7:967
#, no-wrap
msgid " /* Allocate memory for watch descriptors */\n"
msgstr " /* Allocate memory for watch descriptors */\n"
#. type: Plain text
-#: build/C/man7/inotify.7:969
+#: build/C/man7/inotify.7:973
#, no-wrap
msgid ""
" wd = calloc(argc, sizeof(int));\n"
" }\n"
#. type: Plain text
-#: build/C/man7/inotify.7:973
+#: build/C/man7/inotify.7:977
#, no-wrap
msgid ""
" /* Mark directories for events\n"
" - file was closed */\n"
#. type: Plain text
-#: build/C/man7/inotify.7:983
+#: build/C/man7/inotify.7:987
#, no-wrap
msgid ""
" for (i = 1; i E<lt> argc; i++) {\n"
" }\n"
#. type: Plain text
-#: build/C/man7/inotify.7:994
+#: build/C/man7/inotify.7:998
#, no-wrap
msgid " /* Inotify input */\n"
msgstr " /* Inotify input */\n"
#. type: Plain text
-#: build/C/man7/inotify.7:999
+#: build/C/man7/inotify.7:1003
#, no-wrap
msgid " /* Wait for events and/or terminal input */\n"
msgstr " /* Wait for events and/or terminal input */\n"
#. type: Plain text
-#: build/C/man7/inotify.7:1009
+#: build/C/man7/inotify.7:1013
#, no-wrap
msgid ""
" printf(\"Listening for events.\\en\");\n"
" }\n"
#. type: Plain text
-#: build/C/man7/inotify.7:1011
+#: build/C/man7/inotify.7:1015
#, no-wrap
msgid " if (poll_num E<gt> 0) {\n"
msgstr " if (poll_num E<gt> 0) {\n"
#. type: Plain text
-#: build/C/man7/inotify.7:1013
+#: build/C/man7/inotify.7:1017
#, no-wrap
msgid " if (fds[0].revents & POLLIN) {\n"
msgstr " if (fds[0].revents & POLLIN) {\n"
#. type: Plain text
-#: build/C/man7/inotify.7:1015
+#: build/C/man7/inotify.7:1019
#, no-wrap
msgid " /* Console input is available. Empty stdin and quit */\n"
msgstr " /* Console input is available. Empty stdin and quit */\n"
#. type: Plain text
-#: build/C/man7/inotify.7:1024
+#: build/C/man7/inotify.7:1028
#, no-wrap
msgid " /* Inotify events are available */\n"
msgstr " /* Inotify events are available */\n"
#. type: Plain text
-#: build/C/man7/inotify.7:1029
+#: build/C/man7/inotify.7:1033
#, no-wrap
msgid ""
" handle_events(fd, wd, argc, argv);\n"
" }\n"
#. type: Plain text
-#: build/C/man7/inotify.7:1031
+#: build/C/man7/inotify.7:1035
#, no-wrap
msgid " printf(\"Listening for events stopped.\\en\");\n"
msgstr " printf(\"Listening for events stopped.\\en\");\n"
#. type: Plain text
-#: build/C/man7/inotify.7:1033
+#: build/C/man7/inotify.7:1037
#, no-wrap
msgid " /* Close inotify file descriptor */\n"
msgstr " /* Close inotify file descriptor */\n"
#. type: Plain text
-#: build/C/man7/inotify.7:1035
+#: build/C/man7/inotify.7:1039
#, no-wrap
msgid " close(fd);\n"
msgstr " close(fd);\n"
#. type: Plain text
-#: build/C/man7/inotify.7:1039
+#: build/C/man7/inotify.7:1043
#, no-wrap
msgid ""
" free(wd);\n"
"}\n"
#. type: Plain text
-#: build/C/man7/inotify.7:1050
+#: build/C/man7/inotify.7:1054
msgid ""
"B<inotifywait>(1), B<inotifywatch>(1), B<inotify_add_watch>(2), "
"B<inotify_init>(2), B<inotify_init1>(2), B<inotify_rm_watch>(2), B<read>(2), "
"B<stat>(2), B<fanotify>(7)"
#. type: Plain text
-#: build/C/man7/inotify.7:1053
+#: build/C/man7/inotify.7:1057
msgid ""
"I<Documentation/filesystems/inotify.txt> in the Linux kernel source tree"
msgstr "Linux カーネルソース内の I<Documentation/filesystems/inotify.txt>"
msgid "B<inotify_add_watch>(2), B<inotify_init>(2), B<inotify>(7)"
msgstr "B<inotify_add_watch>(2), B<inotify_init>(2), B<inotify>(7)"
+#~ msgid "2014-05-21"
+#~ msgstr "2014-05-21"
+
+#~ msgid "2014-09-06"
+#~ msgstr "2014-09-06"
+
#~ msgid ""
#~ "Add (OR) events to watch mask for this pathname if it already exists "
#~ "(instead of replacing mask)."