.\" -*- coding: UTF-8 -*-
'\" t
.\" Copyright, the authors of the Linux man-pages project
.\"
.\" SPDX-License-Identifier: Linux-man-pages-copyleft
.\"
.\"*******************************************************************
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
.TH mkfifo 3 "17 maja 2025 r." "Linux man\-pages 6.16" 
.SH NAZWA
mkfifo, mkfifoat \- tworzy specjalny plik FIFO (potok nazwany)
.SH BIBLIOTEKA
Standardowa biblioteka C (\fIlibc\fP,\ \fI\-lc\fP)
.SH SKŁADNIA
.nf
\fB#include <sys/types.h>\fP
\fB#include <sys/stat.h>\fP
.P
\fBint mkfifo(const char *\fP\fIpath\fP\fB, mode_t \fP\fImode\fP\fB);\fP
.P
\fB#include <fcntl.h>           \fP/* Definicja stałych AT_* */
\fB#include <sys/stat.h>\fP
.P
\fBint mkfifoat(int \fP\fIdirfd\fP\fB, const char *\fP\fIpath\fP\fB, mode_t \fP\fImode\fP\fB);\fP
.fi
.P
.RS -4
Wymagane ustawienia makr biblioteki glibc (patrz \fBfeature_test_macros\fP(7)):
.RE
.P
\fBmkfifoat\fP():
.nf
    Od glibc 2.10:
        _POSIX_C_SOURCE >= 200809L
    Przed glibc 2.10:
        _ATFILE_SOURCE
.fi
.SH OPIS
\fBmkfifo\fP() tworzy specjalny plik FIFO o nazwie \fIpath\fP. \fImode\fP określa
uprawnienia FIFO. Są one modyfikowane przez \fIumask\fP procesu, w standardowy
sposób: uprawnieniami tworzonego pliku będą \fI(mode\ &\ \[ti]umask)\fP.
.P
Specjalny plik FIFO jest podobny do potoku, z tą różnicą, że jest tworzony w
inny sposób. Zamiast być anonimowym kanałem komunikacji, specjalny plik FIFO
pojawia się w systemie plików po wywołaniu \fBmkfifo\fP().
.P
Po utworzeniu specjalnego pliku FIFO w ten sposób, dowolny proces może go
otworzyć do odczytu lub zapisu, w ten sam sposób, jak zwykły plik. Jednak
musi być otwarty na obu końcach równocześnie, aby dało się na nim
przeprowadzać operacje wejścia lub wyjścia. Otwarcie FIFO do odczytu zwykle
blokuje do momentu, aż jakiś inny proces nie otworzy tego samego FIFO do
zapisu i na odwrót. Opis nieblokującej obsługi specjalnych plików FIFO
zawarto w \fBfifo\fP(7).
.SS mkfifoat()
Wywołanie systemowe \fBmkfifoat\fP() operuje w dokładnie taki sam sposób jak
\fBmkfifo\fP(), z wyjątkiem różnic opisanych tutaj.
.P
Jeśli ścieżka \fIpath\fP jest względna, jest to interpretowane w odniesieniu do
katalogu do którego odnosi się deskryptor pliku \fIdirfd\fP (zamiast w
odniesieniu do bieżącego katalogu roboczego procesu wywołującego, jak w
stosunku do ścieżek względnych robi to \fBmkfifo\fP()).
.P
Jeśli \fIpath\fP jest względna a \fIdirfd\fP ma wartość specjalną \fBAT_FDCWD\fP, to
\fIpath\fP jest interpretowana w odniesieniu do bieżącego katalogu roboczego
procesu wywołującego (jak \fBmkfifo\fP()).
.P
Jeśli ścieżka \fIpath\fP jest bezwzględna, to \fIdirfd\fP jest ignorowane.
.P
Więcej informacji o potrzebie wprowadzenia \fBmkfifoat\fP() można znaleźć w
podręczniku \fBopenat\fP(2).
.SH "WARTOŚĆ ZWRACANA"
Po pomyślnym zakończeniu \fBmkfifo\fP() i \fBmkfifoat\fP() zwracają zero. Po
błędzie zwracane jest \-1 ustawiane \fIerrno\fP wskazując błąd.
.SH BŁĘDY
.TP 
\fBEACCES\fP
Jeden z katalogów w ścieżce \fIpath\fP nie zezwala na uprawnienie przeszukania
(wykonania).
.TP 
\fBEBADF\fP
(\fBmkfifoat\fP())  \fIpath\fP jest względna, lecz \fIdirfd\fP nie jest ani
\fBAT_FDCWD\fP, ani prawidłowym deskryptorem pliku.
.TP 
\fBEDQUOT\fP
Wyczerpano przydział bloków dysku lub i\-węzłów użytkownika w systemie
plików.
.TP 
\fBEEXIST\fP
\fIpath\fP już istnieje. Obejmuje to przypadek, gdy \fIpath\fP jest dowiązaniem
symbolicznym, prawidłowym lub wiszącym.
.TP 
\fBENAMETOOLONG\fP
Całkowity rozmiar \fIpath\fP jest większy od \fBPATH_MAX\fP albo jakaś pojedyncza
składowa ścieżki ma długość większą od \fBNAME_MAX\fP. W systemie GNU nie ma
narzuconego limitu na długość całej ścieżki, ale niektóre systemy plików
mogą stosować limity dotyczące składowej ścieżki.
.TP 
\fBENOENT\fP
Składowa \fIpath\fP, która powinna być katalogiem nie istnieje lub jest
wiszącym dowiązaniem symbolicznym.
.TP 
\fBENOSPC\fP
W katalogu lub systemie plików brak miejsca na nowy plik.
.TP 
\fBENOTDIR\fP
Składowa \fIpath\fP, która powinna być katalogiem, w rzeczywistości katalogiem
nie jest.
.TP 
\fBENOTDIR\fP
(\fBmkfifoat\fP())  \fIpath\fP jest względna a \fIdirfd\fP jest deskryptorem pliku
odnoszącym się do pliku zamiast do katalogu.
.TP 
\fBEROFS\fP
\fIpath\fP odnosi się do systemu plików tylko do odczytu.
.SH ATRYBUTY
Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku
\fBattributes\fP(7).
.TS
allbox;
lbx lb lb
l l l.
Interfejs	Atrybut	Wartość
T{
.na
.nh
\fBmkfifo\fP(),
\fBmkfifoat\fP()
T}	Bezpieczeństwo wątkowe	MT\-bezpieczne
.TE
.SH WERSJE
Zaimplementowane za pomocą \fBmknodat\fP(2).
.SH STANDARDY
POSIX.1\-2008.
.SH HISTORIA
.TP 
\fBmkfifo\fP()
POSIX.1\-2001.
.TP 
\fBmkfifoat\fP()
glibc 2.4.  POSIX.1\-2008.
.SH "ZOBACZ TAKŻE"
\fBmkfifo\fP(1), \fBclose\fP(2), \fBopen\fP(2), \fBread\fP(2), \fBstat\fP(2), \fBumask\fP(2),
\fBwrite\fP(2), \fBfifo\fP(7)
.PP
.SH TŁUMACZENIE
Tłumaczenie niniejszej strony podręcznika:
Michał Kułach <michal.kulach@gmail.com>
.
.PP
Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach
licencji można uzyskać zapoznając się z
.UR https://www.gnu.org/licenses/gpl-3.0.html
GNU General Public License w wersji 3
.UE
lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.
.PP
Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy
dyskusyjnej
.MT manpages-pl-list@lists.sourceforge.net
.ME .
