recvfrom işlevi soket soketinden bir paketi tampon alanına okur. boyut argümanı okunacak azami bayt sayısını belirtir.
Eğer paket boyut bayttan uzunsa, paketin ilk boyut baytı alınır ve paketin geri kalanı kaybolur. Paketin gerisini okumanın hiç bir yolu yoktur. Bu nedenle, bir paket protokolü kullandığınızda, paketin ne uzunlukta olacağını her zaman bilmeniz gerekir.
adres ve
uzunluk_gstr argümanları paketin geldiği yerin adresini döndürmek için kullanılır. Bkz.
Soket Adresleri. Yerel etki alanındaki bir soket için adres bilgisi anlamlı değildir, çünkü böyle bir soketin adresini okuyamazsınız (Bkz.
Yerel İsim Alanı). Bu bilgiyle ilgilenmiyorsanız
adres argümanına boş gösterici belirtebilirsiniz.
bayraklar argümanı
recv işlevindeki gibi yorumlanır (bkz.
Soket Verisi Seçenekleri). Dönüş değeri ve hata durumları da
recv işlevi ile aynıdır.
Bu işlev çok evreli yazılımlar için iptal noktası olarak tanımlanmıştır, bu nedenle ayrılan özkaynakların (bellek, dosya tanımlayıcısı, semafor veya her hangi başka bir kaynak) evre iptal edilse dahi serbest bırakılmasının sağlanması şarttır.