.\" -*- coding: UTF-8 -*- '\" t .\" Copyright 1993 David Metcalfe (david@prism.demon.co.uk) .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\" References consulted: .\" Linux libc source code .\" Lewine's _POSIX Programmer's Guide_ (O'Reilly & Associates, 1991) .\" 386BSD man pages .\" Modified Sat Jul 24 18:55:27 1993 by Rik Faith (faith@cs.unc.edu) .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH memcmp 3 "2 maja 2024 r." "Linux man\-pages 6.8" .SH NAZWA memcmp \- porównuje obszary pamięci .SH BIBLIOTEKA Standardowa biblioteka C (\fIlibc\fP, \fI\-lc\fP) .SH SKŁADNIA .nf \fB#include \fP .P \fBint memcmp(const void \fP\fIs1\fP\fB[.\fP\fIn\fP\fB], const void \fP\fIs2\fP\fB[.\fP\fIn\fP\fB], size_t \fP\fIn\fP\fB);\fP .fi .SH OPIS Funkcja \fBmemcmp\fP() porównuje pierwsze \fIn\fP bajtów (każdy interpretowany jako \fIunsigned char\fP) obszaru pamięci \fIs1\fP z obszarem \fIs2\fP. .SH "WARTOŚĆ ZWRACANA" Funkcja \fBmemcmp\fP() zwraca liczbę całkowitą mniejszą od zera, równą zeru lub większą od zera, jeżeli \fIs1\fP jest odpowiednio mniejszy niż, równy lub większy niż pierwsze \fIn\fP bajtów \fIs2\fP. .P Jeśli wartość zwracana jest niezerowa, dodatni lub ujemny znak tej wartości jest określany na podstawie znaku różnicy pomiędzy pierwszą parę bajtów (interpretowanych jako \fIunsigned char\fP), które się różnią pomiędzy \fIs1\fP i \fIs2\fP. .P Jeśli \fIn\fP jest zerem, zwracaną wartością jest zero. .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 \fBmemcmp\fP() T} Bezpieczeństwo wątkowe MT\-bezpieczne .TE .SH STANDARDY C11, POSIX.1\-2008. .SH HISTORIA POSIX.1\-2001, C89, SVr4, 4.3BSD. .SH ZASTRZEŻENIA Nie należy używać \fBmemcmp\fP() do porównywania danych poufnych, takich jak sekrety kryptograficzne, ponieważ czas procesora wymagany do porównywania zależy od zawartości porównywanych adresów, co czyni tę funkcję podatną na ataki bocznego kanału bazujące na czasie. W takich przypadkach, wymagana jest funkcja wykonująca porównanie w deterministycznym czasie, zależnym tylko od \fIn\fP (liczby porównywanych bajtów). Niektóre systemy operacyjne udostępniają taką funkcję (np. w systemie NetBSD jest to \fBconsttime_memequal\fP()), lecz nie określono jej w specyfikacji POSIX. W Linuksie, może być konieczne samodzielne zaimplementowanie takiej funkcji. .SH "ZOBACZ TAKŻE" \fBbstring\fP(3), \fBstrcasecmp\fP(3), \fBstrcmp\fP(3), \fBstrcoll\fP(3), \fBstrncasecmp\fP(3), \fBstrncmp\fP(3), \fBwmemcmp\fP(3) .PP .SH TŁUMACZENIE Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Adam Byrtek , Andrzej Krzysztofowicz , Robert Luberda i Michał Kułach . .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 .