summaryrefslogtreecommitdiff
path: root/Tools/CCode/Source/EfiCompress/EfiCompressMain.c
diff options
context:
space:
mode:
Diffstat (limited to 'Tools/CCode/Source/EfiCompress/EfiCompressMain.c')
-rw-r--r--Tools/CCode/Source/EfiCompress/EfiCompressMain.c226
1 files changed, 0 insertions, 226 deletions
diff --git a/Tools/CCode/Source/EfiCompress/EfiCompressMain.c b/Tools/CCode/Source/EfiCompress/EfiCompressMain.c
deleted file mode 100644
index db27a33a5b..0000000000
--- a/Tools/CCode/Source/EfiCompress/EfiCompressMain.c
+++ /dev/null
@@ -1,226 +0,0 @@
-/*++
-
-Copyright (c) 1999-2006 Intel Corporation. All rights reserved
-This program and the accompanying materials are licensed and made available
-under the terms and conditions of the BSD License which accompanies this
-distribution. The full text of the license may be found at
-http://opensource.org/licenses/bsd-license.php
-
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-
-
-Module Name:
-
- EfiCompressMain.c
-
-Abstract:
-
- The main function for the compression utility.
-
---*/
-
-#include <stdlib.h>
-#include <string.h>
-#include <ctype.h>
-#include <stdarg.h>
-#include <stdio.h>
-
-#include <Common/UefiBaseTypes.h>
-#include "Compress.h"
-
-#define UTILITY_NAME "EfiCompress"
-#define UTILITY_MAJOR_VERSION 1
-#define UTILITY_MINOR_VERSION 1
-
-void
-Version(
- void
- )
-/*++
-
-Routine Description:
-
- Print out version information for EfiCompress.
-
-Arguments:
-
- None
-
-Returns:
-
- None
-
---*/
-{
- printf ("%s v%d.%d -Efi File Compress Utility\n", UTILITY_NAME, UTILITY_MAJOR_VERSION, UTILITY_MINOR_VERSION);
- printf ("Copyright (c) 2005-2006 Intel Corporation. All rights reserved.\n");
-}
-
-void
-Usage(
- void
- )
-/*++
-
-Routine Description:
-
- Print out usage information for EfiCompress.
-
-Arguments:
-
- None
-
-Returns:
-
- None
-
---*/
-{
- Version();
- printf ("\nUsage: %s Inputfile Outputfile\n", UTILITY_NAME);
-}
-
-
-int
-main (
- INT32 argc,
- CHAR8 *argv[]
- )
-/*++
-
-Routine Description:
-
- Compresses the input files
-
-Arguments:
-
- argc - number of arguments passed into the command line.
- argv[] - files to compress and files to output compressed data to.
-
-Returns:
-
- int: 0 for successful execution of the function.
-
---*/
-{
- EFI_STATUS Status;
- FILE *infile;
- FILE *outfile;
- UINT32 SrcSize;
- UINT32 DstSize;
- UINT8 *SrcBuffer;
- UINT8 *DstBuffer;
- UINT8 Buffer[8];
-
- //
- // Added for makefile debug - KCE
- //
- INT32 arg_counter;
-
- SrcBuffer = DstBuffer = NULL;
- infile = outfile = NULL;
-
- if (argc == 1) {
- Usage();
- goto Done;
- }
-
- if ((strcmp(argv[1], "-h") == 0) || (strcmp(argv[1], "--help") == 0) ||
- (strcmp(argv[1], "-?") == 0) || (strcmp(argv[1], "/?") == 0)) {
- Usage();
- goto Done;
- }
-
- if ((strcmp(argv[1], "-V") == 0) || (strcmp(argv[1], "--version") == 0)) {
- Version();
- goto Done;
- }
-
- if (argc != 3) {
- Usage();
- goto Done;
- }
-
- if ((outfile = fopen (argv[2], "wb")) == NULL) {
- printf ("Can't open output file\n");
- goto Done;
- }
-
- if ((infile = fopen (argv[1], "rb")) == NULL) {
- printf ("Can't open input file\n");
- goto Done;
- }
- //
- // Get the size of source file
- //
- SrcSize = 0;
- while (fread (Buffer, 1, 1, infile)) {
- SrcSize++;
-
- }
- //
- // Read in the source data
- //
- if ((SrcBuffer = malloc (SrcSize)) == NULL) {
- printf ("Can't allocate memory\n");
- goto Done;
- }
-
- rewind (infile);
- if (fread (SrcBuffer, 1, SrcSize, infile) != SrcSize) {
- printf ("Can't read from source\n");
- goto Done;
- }
- //
- // Get destination data size and do the compression
- //
- DstSize = 0;
- Status = EfiCompress (SrcBuffer, SrcSize, DstBuffer, &DstSize);
- if (Status == EFI_BUFFER_TOO_SMALL) {
- if ((DstBuffer = malloc (DstSize)) == NULL) {
- printf ("Can't allocate memory\n");
- goto Done;
- }
-
- Status = EfiCompress (SrcBuffer, SrcSize, DstBuffer, &DstSize);
- }
-
- if (EFI_ERROR (Status)) {
- printf ("Compress Error\n");
- goto Done;
- }
-
- printf ("\nOrig Size = %ld\n", SrcSize);
- printf ("Comp Size = %ld\n", DstSize);
-
- if (DstBuffer == NULL) {
- printf ("No destination to write to.\n");
- goto Done;
- }
- //
- // Write out the result
- //
- if (fwrite (DstBuffer, 1, DstSize, outfile) != DstSize) {
- printf ("Can't write to destination file\n");
- }
-
-Done:
- if (SrcBuffer) {
- free (SrcBuffer);
- }
-
- if (DstBuffer) {
- free (DstBuffer);
- }
-
- if (infile) {
- fclose (infile);
- }
-
- if (outfile) {
- fclose (outfile);
- }
-
- return 0;
-}