Rename some file transfer functions

This commit is contained in:
Louis-Antoine 2020-05-12 19:06:40 +02:00
parent a491f20bee
commit 70f4d12d38
4 changed files with 41 additions and 40 deletions

View file

@ -1598,7 +1598,7 @@ static void SV_SendSaveGame(INT32 node)
WRITEUINT32(savebuffer, 0); WRITEUINT32(savebuffer, 0);
} }
SV_SendRam(node, buffertosend, length, SF_RAM, 0); AddRamToSendQueue(node, buffertosend, length, SF_RAM, 0);
save_p = NULL; save_p = NULL;
// Remember when we started sending the savegame so we can handle timeouts // Remember when we started sending the savegame so we can handle timeouts
@ -1978,7 +1978,7 @@ static boolean CL_ServerConnectionSearchTicker(boolean viams, tic_t *asksent)
return false; return false;
} }
// no problem if can't send packet, we will retry later // no problem if can't send packet, we will retry later
if (CL_SendRequestFile()) if (CL_SendFileRequest())
cl_mode = CL_DOWNLOADFILES; cl_mode = CL_DOWNLOADFILES;
} }
} }
@ -2106,7 +2106,7 @@ static boolean CL_ServerConnectionTicker(boolean viams, const char *tmpsave, tic
// why are these here? this is for servers, we're a client // why are these here? this is for servers, we're a client
//if (key == 's' && server) //if (key == 's' && server)
// doomcom->numnodes = (INT16)pnumnodes; // doomcom->numnodes = (INT16)pnumnodes;
//SV_FileSendTicker(); //FileSendTicker();
*oldtic = I_GetTime(); *oldtic = I_GetTime();
#ifdef CLIENT_LOADINGSCREEN #ifdef CLIENT_LOADINGSCREEN
@ -3911,13 +3911,13 @@ static void HandlePacketFromAwayNode(SINT8 node)
break; break;
} }
SERVERONLY SERVERONLY
Got_Filetxpak(); PT_FileFragment();
break; break;
case PT_REQUESTFILE: case PT_REQUESTFILE:
if (server) if (server)
{ {
if (!cv_downloading.value || !Got_RequestFilePak(node)) if (!cv_downloading.value || !PT_RequestFile(node))
Net_CloseConnection(node); // close connection if one of the requested files could not be sent, or you disabled downloading anyway Net_CloseConnection(node); // close connection if one of the requested files could not be sent, or you disabled downloading anyway
} }
else else
@ -4216,7 +4216,7 @@ static void HandlePacketFromPlayer(SINT8 node)
{ {
char *name = va("%s" PATHSEP "%s", luafiledir, luafiletransfers->filename); char *name = va("%s" PATHSEP "%s", luafiledir, luafiletransfers->filename);
boolean textmode = !strchr(luafiletransfers->mode, 'b'); boolean textmode = !strchr(luafiletransfers->mode, 'b');
SV_SendLuaFile(node, name, textmode); AddLuaFileToSendQueue(node, name, textmode);
} }
break; break;
case PT_HASLUAFILE: case PT_HASLUAFILE:
@ -4348,7 +4348,7 @@ static void HandlePacketFromPlayer(SINT8 node)
break; break;
} }
if (client) if (client)
Got_Filetxpak(); PT_FileFragment();
break; break;
case PT_SENDINGLUAFILE: case PT_SENDINGLUAFILE:
if (client) if (client)
@ -5073,7 +5073,7 @@ void NetUpdate(void)
CON_Ticker(); CON_Ticker();
} }
SV_FileSendTicker(); FileSendTicker();
} }
/** Returns the number of players playing. /** Returns the number of players playing.

View file

@ -56,7 +56,7 @@
#include <errno.h> #include <errno.h>
// Prototypes // Prototypes
static boolean SV_SendFile(INT32 node, const char *filename, UINT8 fileid); static boolean AddFileToSendQueue(INT32 node, const char *filename, UINT8 fileid);
// Sender structure // Sender structure
typedef struct filetx_s typedef struct filetx_s
@ -253,7 +253,7 @@ boolean CL_CheckDownloadable(void)
* \note Sends a PT_REQUESTFILE packet * \note Sends a PT_REQUESTFILE packet
* *
*/ */
boolean CL_SendRequestFile(void) boolean CL_SendFileRequest(void)
{ {
char *p; char *p;
INT32 i; INT32 i;
@ -298,7 +298,7 @@ boolean CL_SendRequestFile(void)
// get request filepak and put it on the send queue // get request filepak and put it on the send queue
// returns false if a requested file was not found or cannot be sent // returns false if a requested file was not found or cannot be sent
boolean Got_RequestFilePak(INT32 node) boolean PT_RequestFile(INT32 node)
{ {
char wad[MAX_WADPATH+1]; char wad[MAX_WADPATH+1];
UINT8 *p = netbuffer->u.textcmd; UINT8 *p = netbuffer->u.textcmd;
@ -309,7 +309,7 @@ boolean Got_RequestFilePak(INT32 node)
if (id == 0xFF) if (id == 0xFF)
break; break;
READSTRINGN(p, wad, MAX_WADPATH); READSTRINGN(p, wad, MAX_WADPATH);
if (!SV_SendFile(node, wad, id)) if (!AddFileToSendQueue(node, wad, id))
{ {
SV_AbortSendFiles(node); SV_AbortSendFiles(node);
return false; // don't read the rest of the files return false; // don't read the rest of the files
@ -621,11 +621,11 @@ static INT32 filestosend = 0;
* \param node The node to send the file to * \param node The node to send the file to
* \param filename The file to send * \param filename The file to send
* \param fileid ??? * \param fileid ???
* \sa SV_SendRam * \sa AddRamToSendQueue
* \sa SV_SendLuaFile * \sa AddLuaFileToSendQueue
* *
*/ */
static boolean SV_SendFile(INT32 node, const char *filename, UINT8 fileid) static boolean AddFileToSendQueue(INT32 node, const char *filename, UINT8 fileid)
{ {
filetx_t **q; // A pointer to the "next" field of the last file in the list filetx_t **q; // A pointer to the "next" field of the last file in the list
filetx_t *p; // The new file request filetx_t *p; // The new file request
@ -643,7 +643,7 @@ static boolean SV_SendFile(INT32 node, const char *filename, UINT8 fileid)
// Allocate a file request and append it to the file list // Allocate a file request and append it to the file list
p = *q = (filetx_t *)malloc(sizeof (filetx_t)); p = *q = (filetx_t *)malloc(sizeof (filetx_t));
if (!p) if (!p)
I_Error("SV_SendFile: No more memory\n"); I_Error("AddFileToSendQueue: No more memory\n");
// Initialise with zeros // Initialise with zeros
memset(p, 0, sizeof (filetx_t)); memset(p, 0, sizeof (filetx_t));
@ -651,7 +651,7 @@ static boolean SV_SendFile(INT32 node, const char *filename, UINT8 fileid)
// Allocate the file name // Allocate the file name
p->id.filename = (char *)malloc(MAX_WADPATH); p->id.filename = (char *)malloc(MAX_WADPATH);
if (!p->id.filename) if (!p->id.filename)
I_Error("SV_SendFile: No more memory\n"); I_Error("AddFileToSendQueue: No more memory\n");
// Set the file name and get rid of the path // Set the file name and get rid of the path
strlcpy(p->id.filename, filename, MAX_WADPATH); strlcpy(p->id.filename, filename, MAX_WADPATH);
@ -712,11 +712,11 @@ static boolean SV_SendFile(INT32 node, const char *filename, UINT8 fileid)
* \param size The size of the block in bytes * \param size The size of the block in bytes
* \param freemethod How to free the block after it has been sent * \param freemethod How to free the block after it has been sent
* \param fileid ??? * \param fileid ???
* \sa SV_SendFile * \sa AddFileToSendQueue
* \sa SV_SendLuaFile * \sa AddLuaFileToSendQueue
* *
*/ */
void SV_SendRam(INT32 node, void *data, size_t size, freemethod_t freemethod, UINT8 fileid) void AddRamToSendQueue(INT32 node, void *data, size_t size, freemethod_t freemethod, UINT8 fileid)
{ {
filetx_t **q; // A pointer to the "next" field of the last file in the list filetx_t **q; // A pointer to the "next" field of the last file in the list
filetx_t *p; // The new file request filetx_t *p; // The new file request
@ -729,7 +729,7 @@ void SV_SendRam(INT32 node, void *data, size_t size, freemethod_t freemethod, UI
// Allocate a file request and append it to the file list // Allocate a file request and append it to the file list
p = *q = (filetx_t *)malloc(sizeof (filetx_t)); p = *q = (filetx_t *)malloc(sizeof (filetx_t));
if (!p) if (!p)
I_Error("SV_SendRam: No more memory\n"); I_Error("AddRamToSendQueue: No more memory\n");
// Initialise with zeros // Initialise with zeros
memset(p, 0, sizeof (filetx_t)); memset(p, 0, sizeof (filetx_t));
@ -749,11 +749,11 @@ void SV_SendRam(INT32 node, void *data, size_t size, freemethod_t freemethod, UI
* *
* \param node The node to send the file to * \param node The node to send the file to
* \param filename The file to send * \param filename The file to send
* \sa SV_SendFile * \sa AddFileToSendQueue
* \sa SV_SendRam * \sa AddRamToSendQueue
* *
*/ */
boolean SV_SendLuaFile(INT32 node, const char *filename, boolean textmode) boolean AddLuaFileToSendQueue(INT32 node, const char *filename, boolean textmode)
{ {
filetx_t **q; // A pointer to the "next" field of the last file in the list filetx_t **q; // A pointer to the "next" field of the last file in the list
filetx_t *p; // The new file request filetx_t *p; // The new file request
@ -770,7 +770,7 @@ boolean SV_SendLuaFile(INT32 node, const char *filename, boolean textmode)
// Allocate a file request and append it to the file list // Allocate a file request and append it to the file list
p = *q = (filetx_t *)malloc(sizeof (filetx_t)); p = *q = (filetx_t *)malloc(sizeof (filetx_t));
if (!p) if (!p)
I_Error("SV_SendLuaFile: No more memory\n"); I_Error("AddLuaFileToSendQueue: No more memory\n");
// Initialise with zeros // Initialise with zeros
memset(p, 0, sizeof (filetx_t)); memset(p, 0, sizeof (filetx_t));
@ -778,7 +778,7 @@ boolean SV_SendLuaFile(INT32 node, const char *filename, boolean textmode)
// Allocate the file name // Allocate the file name
p->id.filename = (char *)malloc(MAX_WADPATH); // !!! p->id.filename = (char *)malloc(MAX_WADPATH); // !!!
if (!p->id.filename) if (!p->id.filename)
I_Error("SV_SendLuaFile: No more memory\n"); I_Error("AddLuaFileToSendQueue: No more memory\n");
// Set the file name and get rid of the path // Set the file name and get rid of the path
strlcpy(p->id.filename, filename, MAX_WADPATH); // !!! strlcpy(p->id.filename, filename, MAX_WADPATH); // !!!
@ -804,7 +804,8 @@ static void SV_EndFileSend(INT32 node)
{ {
filetx_t *p = transfer[node].txlist; filetx_t *p = transfer[node].txlist;
// Free the file request according to the freemethod parameter used with SV_SendFile/Ram // Free the file request according to the freemethod
// parameter used with AddFileToSendQueue/AddRamToSendQueue
switch (p->ram) switch (p->ram)
{ {
case SF_FILE: // It's a file, close it and free its filename case SF_FILE: // It's a file, close it and free its filename
@ -842,7 +843,7 @@ static void SV_EndFileSend(INT32 node)
* especially when the one downloading has high latency * especially when the one downloading has high latency
* *
*/ */
void SV_FileSendTicker(void) void FileSendTicker(void)
{ {
static INT32 currentnode = 0; static INT32 currentnode = 0;
filetx_pak *p; filetx_pak *p;
@ -938,7 +939,7 @@ void SV_FileSendTicker(void)
if (f->textmode && feof(transfer[i].currentfile)) if (f->textmode && feof(transfer[i].currentfile))
size = n; size = n;
else if (fread(p->data, 1, size, transfer[i].currentfile) != size) else if (fread(p->data, 1, size, transfer[i].currentfile) != size)
I_Error("SV_FileSendTicker: can't read %s byte on %s at %d because %s", sizeu1(size), f->id.filename, transfer[i].position, M_FileError(transfer[i].currentfile)); I_Error("FileSendTicker: can't read %s byte on %s at %d because %s", sizeu1(size), f->id.filename, transfer[i].position, M_FileError(transfer[i].currentfile));
} }
} }
p->position = LONG(transfer[i].position); p->position = LONG(transfer[i].position);
@ -965,7 +966,7 @@ void SV_FileSendTicker(void)
} }
} }
void Got_Filetxpak(void) void PT_FileFragment(void)
{ {
INT32 filenum = netbuffer->u.filetxpak.fileid; INT32 filenum = netbuffer->u.filetxpak.fileid;
fileneeded_t *file = &fileneeded[filenum]; fileneeded_t *file = &fileneeded[filenum];
@ -995,7 +996,7 @@ void Got_Filetxpak(void)
if (file->status == FS_REQUESTED) if (file->status == FS_REQUESTED)
{ {
if (file->file) if (file->file)
I_Error("Got_Filetxpak: already open file\n"); I_Error("PT_FileFragment: already open file\n");
file->file = fopen(filename, file->textmode ? "w" : "wb"); file->file = fopen(filename, file->textmode ? "w" : "wb");
if (!file->file) if (!file->file)
I_Error("Can't create file %s: %s", filename, strerror(errno)); I_Error("Can't create file %s: %s", filename, strerror(errno));
@ -1078,7 +1079,7 @@ void Got_Filetxpak(void)
* \return True if the node is downloading a file * \return True if the node is downloading a file
* *
*/ */
boolean SV_SendingFile(INT32 node) boolean SendingFile(INT32 node)
{ {
return transfer[node].txlist != NULL; return transfer[node].txlist != NULL;
} }

View file

@ -61,16 +61,16 @@ void CL_PrepareDownloadSaveGame(const char *tmpsave);
INT32 CL_CheckFiles(void); INT32 CL_CheckFiles(void);
void CL_LoadServerFiles(void); void CL_LoadServerFiles(void);
void SV_SendRam(INT32 node, void *data, size_t size, freemethod_t freemethod, void AddRamToSendQueue(INT32 node, void *data, size_t size, freemethod_t freemethod,
UINT8 fileid); UINT8 fileid);
void SV_FileSendTicker(void); void FileSendTicker(void);
void Got_Filetxpak(void); void PT_FileFragment(void);
boolean SV_SendingFile(INT32 node); boolean SendingFile(INT32 node);
boolean CL_CheckDownloadable(void); boolean CL_CheckDownloadable(void);
boolean CL_SendRequestFile(void); boolean CL_SendFileRequest(void);
boolean Got_RequestFilePak(INT32 node); boolean PT_RequestFile(INT32 node);
typedef enum typedef enum
{ {
@ -96,7 +96,7 @@ extern char luafiledir[256 + 16];
void AddLuaFileTransfer(const char *filename, const char *mode); void AddLuaFileTransfer(const char *filename, const char *mode);
void SV_PrepareSendLuaFileToNextNode(void); void SV_PrepareSendLuaFileToNextNode(void);
boolean SV_SendLuaFile(INT32 node, const char *filename, boolean textmode); boolean AddLuaFileToSendQueue(INT32 node, const char *filename, boolean textmode);
void SV_PrepareSendLuaFile(const char *filename); void SV_PrepareSendLuaFile(const char *filename);
void SV_HandleLuaFileSent(UINT8 node); void SV_HandleLuaFileSent(UINT8 node);
void RemoveLuaFileTransfer(void); void RemoveLuaFileTransfer(void);

View file

@ -487,7 +487,7 @@ static void cleanupnodes(void)
// Why can't I start at zero? // Why can't I start at zero?
for (j = 1; j < MAXNETNODES; j++) for (j = 1; j < MAXNETNODES; j++)
if (!(nodeingame[j] || SV_SendingFile(j))) if (!(nodeingame[j] || SendingFile(j)))
nodeconnected[j] = false; nodeconnected[j] = false;
} }