Exemple #1
0
static HB_FHANDLE s_fileHandle( PHB_FILE pFile )
{
   HB_SYMBOL_UNUSED( pFile );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return ( HB_FHANDLE ) FS_ERROR;
}
Exemple #2
0
static HB_FOFFSET s_fileSize( PHB_FILE pFile )
{
   HB_SYMBOL_UNUSED( pFile );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return 0;
}
Exemple #3
0
static HB_BOOL s_fileDelete( const char * pszFileName )
{
   HB_SYMBOL_UNUSED( pszFileName );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return HB_FALSE;
}
Exemple #4
0
static char * s_fileLinkRead( const char * pszFileName )
{
   HB_SYMBOL_UNUSED( pszFileName );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return NULL;
}
Exemple #5
0
static HB_BOOL s_fileEof( PHB_FILE pFile )
{
   HB_SYMBOL_UNUSED( pFile );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return HB_TRUE;
}
Exemple #6
0
static HB_BOOL s_fileLock( PHB_FILE pFile, HB_FOFFSET nStart, HB_FOFFSET nLen,
                           int iType )
{
   HB_BOOL fResult, fLockFS = HB_FALSE;

   if( ( iType & FL_MASK ) == FL_UNLOCK )
   {
      hb_threadEnterCriticalSection( &s_fileMtx );
      fResult = hb_fileUnlock( pFile, &fLockFS, nStart, nLen );
      hb_threadLeaveCriticalSection( &s_fileMtx );
      if( fLockFS )
      {
         hb_fsLockLarge( pFile->hFile, nStart, nLen, ( HB_USHORT ) iType );
         hb_threadEnterCriticalSection( &s_fileMtx );
         hb_fileUnlock( pFile, NULL, nStart, nLen );
         hb_threadLeaveCriticalSection( &s_fileMtx );
      }
      else
         hb_fsSetError( fResult ? 0 : 33 );
   }
   else
   {
      hb_threadEnterCriticalSection( &s_fileMtx );
      fResult = hb_fileSetLock( pFile, &fLockFS, nStart, nLen );
      hb_threadLeaveCriticalSection( &s_fileMtx );
      if( fLockFS )
      {
#if defined( HB_OS_UNIX )
         if( pFile->readonly )
            iType |= FLX_SHARED;
#endif
         fResult = hb_fsLockLarge( pFile->hFile, nStart, nLen, ( HB_USHORT ) iType );
         if( ! fResult )
         {
            hb_threadEnterCriticalSection( &s_fileMtx );
            hb_fileUnlock( pFile, NULL, nStart, nLen );
            hb_threadLeaveCriticalSection( &s_fileMtx );
         }
      }
      else
         hb_fsSetError( fResult ? 0 : 33 );
   }

   return fResult;
}
Exemple #7
0
static HB_BOOL s_fileLinkSym( const char * pszTarget, const char * pszNewName )
{
   HB_SYMBOL_UNUSED( pszTarget );
   HB_SYMBOL_UNUSED( pszNewName );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return HB_FALSE;
}
Exemple #8
0
static HB_BOOL s_fileLink( const char * pszExisting, const char * pszNewName )
{
   HB_SYMBOL_UNUSED( pszExisting );
   HB_SYMBOL_UNUSED( pszNewName );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return HB_FALSE;
}
Exemple #9
0
static HB_BOOL s_fileAttrSet( const char * pszFileName, HB_FATTR nAttr )
{
   HB_SYMBOL_UNUSED( pszFileName );
   HB_SYMBOL_UNUSED( nAttr );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return HB_FALSE;
}
Exemple #10
0
static HB_BOOL s_fileRename( const char * pszName, const char * pszNewName )
{
   HB_SYMBOL_UNUSED( pszName );
   HB_SYMBOL_UNUSED( pszNewName );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return HB_FALSE;
}
Exemple #11
0
static PHB_ITEM s_fileDirectory( const char * pszDirSpec, const char * pszAttr )
{
   HB_SYMBOL_UNUSED( pszDirSpec );
   HB_SYMBOL_UNUSED( pszAttr );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return NULL;
}
Exemple #12
0
static HB_BOOL s_fileDirRemove( PHB_FILE_FUNCS pFuncs, const char * pszDirName )
{
   HB_SYMBOL_UNUSED( pFuncs );
   HB_SYMBOL_UNUSED( pszDirName );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return HB_FALSE;
}
Exemple #13
0
static HB_BOOL s_fileCopy( const char * pSrcFile, const char * pszDstFile )
{
   HB_SYMBOL_UNUSED( pSrcFile );
   HB_SYMBOL_UNUSED( pszDstFile );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return HB_FALSE;
}
Exemple #14
0
static HB_BOOL s_fileTruncAt( PHB_FILE pFile, HB_FOFFSET nOffset )
{
   HB_SYMBOL_UNUSED( pFile );
   HB_SYMBOL_UNUSED( nOffset );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return HB_FALSE;
}
Exemple #15
0
static HB_BOOL s_fileExists( const char * pszFileName, char * pRetPath )
{
   HB_SYMBOL_UNUSED( pszFileName );
   HB_SYMBOL_UNUSED( pRetPath );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return HB_FALSE;
}
Exemple #16
0
static double s_fileDirSpace( const char * pszDirName, HB_USHORT uiType )
{
   HB_SYMBOL_UNUSED( pszDirName );
   HB_SYMBOL_UNUSED( uiType );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return 0.0;
}
Exemple #17
0
static HB_BOOL s_fileTimeSet( const char * pszFileName, long lJulian, long lMillisec )
{
   HB_SYMBOL_UNUSED( pszFileName );
   HB_SYMBOL_UNUSED( lJulian );
   HB_SYMBOL_UNUSED( lMillisec );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return HB_FALSE;
}
Exemple #18
0
static HB_BOOL s_fileAttrGet( PHB_FILE_FUNCS pFuncs, const char * pszFileName, HB_FATTR * pnAttr )
{
   HB_SYMBOL_UNUSED( pFuncs );
   HB_SYMBOL_UNUSED( pszFileName );
   HB_SYMBOL_UNUSED( pnAttr );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return HB_FALSE;
}
Exemple #19
0
static HB_BOOL s_fileConfigure( PHB_FILE pFile, int iIndex, PHB_ITEM pValue )
{
   HB_SYMBOL_UNUSED( pFile );
   HB_SYMBOL_UNUSED( iIndex );
   HB_SYMBOL_UNUSED( pValue );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return HB_FALSE;
}
Exemple #20
0
static HB_FOFFSET s_fileposSeek( PHB_FILE pFilePos, HB_FOFFSET nOffset,
                                 HB_USHORT uiFlags )
{
   if( uiFlags & FS_END )
      nOffset += pFilePos->pFuncs->Size( pFilePos );
   else if( uiFlags & FS_RELATIVE )
      nOffset += _PHB_FILEPOS->seek_pos;
   /* else FS_SET */

   if( nOffset >= 0 )
   {
      _PHB_FILEPOS->seek_pos = nOffset;
      hb_fsSetError( 0 );
   }
   else
      hb_fsSetError( 25 ); /* 'Seek Error' */

   return _PHB_FILEPOS->seek_pos;
}
Exemple #21
0
HB_BOOL hb_fsCopy( const char * pszSource, const char * pszDest )
{
   HB_BOOL fResult = HB_FALSE;
   PHB_FILE pSrcFile;

   if( ( pSrcFile = hb_fileExtOpen( pszSource, NULL, FO_READ | FO_SHARED | FXO_SHARELOCK, NULL, NULL ) ) != NULL )
   {
      PHB_FILE pDstFile;
      HB_ERRCODE errCode;

      if( ( pDstFile = hb_fileExtOpen( pszDest, NULL, FXO_TRUNCATE | FO_READWRITE | FO_EXCLUSIVE | FXO_SHARELOCK, NULL, NULL ) ) != NULL )
      {
         void * pbyBuffer = hb_xgrab( HB_FSCOPY_BUFFERSIZE );

         for( ;; )
         {
            HB_SIZE nBytesRead;
            if( ( nBytesRead = hb_fileRead( pSrcFile, pbyBuffer, HB_FSCOPY_BUFFERSIZE, -1 ) ) > 0 &&
                nBytesRead != ( HB_SIZE ) FS_ERROR )
            {
               if( nBytesRead != hb_fileWrite( pDstFile, pbyBuffer, nBytesRead, -1 ) )
               {
                  errCode = hb_fsError();
                  break;
               }
            }
            else
            {
               errCode = hb_fsError();
               fResult = errCode == 0;
               break;
            }
         }

         hb_xfree( pbyBuffer );

         hb_fileClose( pDstFile );
      }
      else
         errCode = hb_fsError();

      hb_fileClose( pSrcFile );

      if( fResult )
      {
         HB_FATTR ulAttr;

         if( hb_fileAttrGet( pszSource, &ulAttr ) )
            hb_fileAttrSet( pszDest, ulAttr );
      }
      hb_fsSetError( errCode );
   }

   return fResult;
}
Exemple #22
0
static HB_FOFFSET s_fileSeek( PHB_FILE pFile, HB_FOFFSET nOffset,
                              HB_USHORT uiFlags )
{
   HB_SYMBOL_UNUSED( pFile );
   HB_SYMBOL_UNUSED( nOffset );
   HB_SYMBOL_UNUSED( uiFlags );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return 0;
}
Exemple #23
0
static HB_BOOL s_fileTimeGet( PHB_FILE_FUNCS pFuncs, const char * pszFileName, long * plJulian, long * plMillisec )
{
   HB_SYMBOL_UNUSED( pFuncs );
   HB_SYMBOL_UNUSED( pszFileName );
   HB_SYMBOL_UNUSED( plJulian );
   HB_SYMBOL_UNUSED( plMillisec );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return HB_FALSE;
}
Exemple #24
0
static HB_SIZE s_fileWriteAt( PHB_FILE pFile, const void * buffer,
                              HB_SIZE nSize, HB_FOFFSET nOffset )
{
   HB_SYMBOL_UNUSED( pFile );
   HB_SYMBOL_UNUSED( buffer );
   HB_SYMBOL_UNUSED( nSize );
   HB_SYMBOL_UNUSED( nOffset );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return 0;
}
Exemple #25
0
static HB_SIZE s_fileWrite( PHB_FILE pFile, const void * data,
                            HB_SIZE nSize, HB_MAXINT timeout )
{
   HB_SYMBOL_UNUSED( pFile );
   HB_SYMBOL_UNUSED( data );
   HB_SYMBOL_UNUSED( nSize );
   HB_SYMBOL_UNUSED( timeout );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return 0;
}
Exemple #26
0
static int s_fileLockTest( PHB_FILE pFile, HB_FOFFSET nStart,
                           HB_FOFFSET nLen, int iType )
{
   HB_SYMBOL_UNUSED( pFile );
   HB_SYMBOL_UNUSED( nStart );
   HB_SYMBOL_UNUSED( nLen );
   HB_SYMBOL_UNUSED( iType );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return -1;
}
Exemple #27
0
static HB_BOOL s_fileLock( PHB_FILE pFile, HB_FOFFSET nStart,
                           HB_FOFFSET nLen, int iType )
{
   HB_SYMBOL_UNUSED( pFile );
   HB_SYMBOL_UNUSED( nStart );
   HB_SYMBOL_UNUSED( nLen );
   HB_SYMBOL_UNUSED( iType );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return HB_FALSE;
}
Exemple #28
0
static PHB_FILE s_fileOpen( PHB_FILE_FUNCS pFuncs, const char * pszName,
                            const char * pszDefExt, HB_FATTR nExFlags,
                            const char * pPaths, PHB_ITEM pError )
{
   PHB_FILE pFile = NULL;
   HB_ERRCODE errcode = 0;
   int iPort, iTimeout, iBaud, iParity, iSize, iStop, iFlow;
   HB_BOOL fRead, fWrite;

   HB_SYMBOL_UNUSED( pFuncs );
   HB_SYMBOL_UNUSED( pszDefExt );
   HB_SYMBOL_UNUSED( pPaths );

   fRead = fWrite = HB_TRUE;
   iPort = s_filePortParams( pszName, &iTimeout,
                             &iBaud, &iParity, &iSize, &iStop, &iFlow );
   if( iPort > 0 )
   {
      if( hb_comOpen( iPort ) == 0 &&
          hb_comInit( iPort, iBaud, iParity, iSize, iStop ) == 0 &&
          hb_comFlowControl( iPort, NULL, iFlow ) == 0 )
      {
         switch( nExFlags & ( FO_READ | FO_WRITE | FO_READWRITE ) )
         {
            case FO_READ:
               fWrite = HB_FALSE;
               break;
            case FO_WRITE:
               fRead = HB_FALSE;
               break;
         }
         pFile = s_fileNew( iPort, iTimeout, fRead, fWrite );
      }
      else
         errcode = hb_comGetError( iPort );
   }
   else
      errcode = HB_COM_ERR_WRONGPORT;

   hb_fsSetError( errcode );

   if( pError )
   {
      hb_errPutFileName( pError, pszName );
      if( pFile == NULL )
      {
         hb_errPutOsCode( pError, errcode );
         hb_errPutGenCode( pError, ( HB_ERRCODE ) EG_OPEN );
      }
   }

   return pFile;
}
Exemple #29
0
HB_ULONG hb_fsOS2DosSetFileSizeL( HB_FHANDLE hFile, HB_FOFFSET nSize )
{
   APIRET ret;

   if( hb_isWSeB() )
      ret = s_DosSetFileSizeL( ( HFILE ) hFile, ( LONGLONG ) nSize );
   else
      ret = DosSetFileSize( ( HFILE ) hFile, ( ULONG ) nSize );

   hb_fsSetError( ( HB_ERRCODE ) ret );

   return ret;
}
Exemple #30
0
static PHB_FILE s_fileOpen( const char * pszName, const char * pszDefExt, HB_USHORT uiExFlags,
                            const char * pPaths, PHB_ITEM pError )
{
   HB_SYMBOL_UNUSED( pszName );
   HB_SYMBOL_UNUSED( pszDefExt );
   HB_SYMBOL_UNUSED( uiExFlags );
   HB_SYMBOL_UNUSED( pszDefExt );
   HB_SYMBOL_UNUSED( pPaths );
   HB_SYMBOL_UNUSED( pError );

   hb_fsSetError( HB_FILE_ERR_UNSUPPORTED );

   return NULL;
}