Witam
Szukam przykładu w PHP (na socketach) jak wysłać plik do serwera tftp.
(przykład jak ściągnąć plik z serwera tftp mam)
PS.
może ktoś wie jak przerobić ten przykład:
(funkcja pobiera plik z tftp)
<?php
function tftp_fetch($host, $filename)
{
$socket = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
// create the request packet
$packet = chr(0) . chr(1) . $filename . chr(0) . 'octet' . chr(0);
// UDP is connectionless, so we just send on it.
socket_sendto
($socket, $packet, strlen($packet), 0x100
, $host, 69
);
$buffer = '';
$port = '';
$ret = '';
do
{
// $buffer and $port both come back with information for the ack
// 516 = 4 bytes for the header + 512 bytes of data
socket_recvfrom($socket, $buffer, 516, 0, $host, $port);
// add the block number from the data packet to the ack packet
$packet = chr
(0
) . chr
(4
) . substr($buffer, 2
, 2
); // send ack
socket_sendto
($socket, $packet, strlen($packet), 0
, $host, $port);
// append the data to the return variable
// for large files this function should take a file handle as an arg
}
while(strlen($buffer) == 516
); // the first non-full packet is the last. return $ret;
}
?>
Ten post edytował aksnet 4.07.2017, 14:45:50