Skip to content
Snippets Groups Projects
Select Git revision
  • 6c416c61b1876b75a01e3dfddb6f1be9b3991de3
  • next default protected
  • next-test
  • classic-netcode-fixes
  • fix-dedi-pthread
  • fix-enemy-target
  • master protected
  • better-distance-math
  • movie
  • softcode-info
  • acs
  • clipmidtex
  • custom-map-names
  • nogravity-trampolines
  • 2214-pre4
  • 2214-pre3
  • just-in-case
  • fix-opengl-parameter-crash
  • 2214-pre2
  • 2214-pre1
  • delfile2
  • SRB2_release_2.2.15
  • SRB2_release_2.2.13
  • SRB2_release_2.2.12
  • SRB2_release_2.2.11
  • SRB2_release_2.2.10
  • SRB2_release_2.2.9
  • SRB2_release_2.2.8
  • SRB2_release_2.2.7
  • SRB2_release_2.2.6
  • SRB2_release_2.2.5
  • SRB2_release_2.2.4
  • SRB2_release_2.2.3
  • SRB2_release_2.2.2
  • SRB2_release_2.2.1
  • SRB2_release_2.2.0
  • SRB2_release_2.1.25
  • SRB2_release_2.1.24
  • SRB2_release_2.1.23
  • SRB2_release_2.1.22
  • SRB2_release_2.1.21
41 results

apng.c

Blame
  • d_netfil.h 2.39 KiB
    // SONIC ROBO BLAST 2
    //-----------------------------------------------------------------------------
    // Copyright (C) 1998-2000 by DooM Legacy Team.
    // Copyright (C) 1999-2014 by Sonic Team Junior.
    //
    // This program is free software distributed under the
    // terms of the GNU General Public License, version 2.
    // See the 'LICENSE' file for more details.
    //-----------------------------------------------------------------------------
    /// \file  d_netfil.h
    /// \brief File transferring related structs and functions.
    
    #ifndef __D_NETFIL__
    #define __D_NETFIL__
    
    #include "w_wad.h"
    
    typedef enum
    {
    	SF_FILE,
    	SF_Z_RAM,
    	SF_RAM,
    	SF_NOFREERAM
    } freemethod_t;
    
    typedef enum
    {
    	FS_NOTFOUND,
    	FS_FOUND,
    	FS_REQUESTED,
    	FS_DOWNLOADING,
    	FS_OPEN, // is opened and used in w_wad
    	FS_MD5SUMBAD
    } filestatus_t;
    
    typedef struct
    {
    	UINT8 important;
    	UINT8 willsend; // is the server willing to send it?
    	char filename[MAX_WADPATH];
    	UINT8 md5sum[16];
    	// used only for download
    	FILE *phandle;
    	UINT32 currentsize;
    	UINT32 totalsize;
    	filestatus_t status; // the value returned by recsearch
    } fileneeded_t;
    
    extern INT32 fileneedednum;
    extern fileneeded_t fileneeded[MAX_WADFILES];
    extern char downloaddir[256];
    
    #ifdef CLIENT_LOADINGSCREEN
    extern INT32 lastfilenum;
    #endif
    
    UINT8 *PutFileNeeded(void);
    void D_ParseFileneeded(INT32 fileneedednum_parm, UINT8 *fileneededstr);
    void CL_PrepareDownloadSaveGame(const char *tmpsave);
    
    // check file list in wadfiles return 0 when a file is not found
    //                                    1 if all file are found
    //                                    2 if you cannot connect (different wad version or
    //                                                   no enought space to download files)
    INT32 CL_CheckFiles(void);
    void CL_LoadServerFiles(void);
    void SendRam(INT32 node, void *data, size_t size, freemethod_t freemethod,
    	UINT8 fileid);
    
    void FiletxTicker(void);
    void Got_Filetxpak(void);
    
    boolean CL_CheckDownloadable(void);
    boolean CL_SendRequestFile(void);
    void Got_RequestFilePak(INT32 node);
    
    void AbortSendFiles(INT32 node);
    void CloseNetFile(void);
    
    boolean fileexist(char *filename, time_t ptime);
    
    // search a file in the wadpath, return FS_FOUND when found
    filestatus_t findfile(char *filename, const UINT8 *wantedmd5sum,
    	boolean completepath);
    filestatus_t checkfilemd5(char *filename, const UINT8 *wantedmd5sum);
    
    void nameonly(char *s);
    size_t nameonlylength(const char *s);
    
    #endif // __D_NETFIL__