summaryrefslogtreecommitdiff
path: root/BaseTools/Source/C/PyUtility/PyUtility.c
diff options
context:
space:
mode:
Diffstat (limited to 'BaseTools/Source/C/PyUtility/PyUtility.c')
-rw-r--r--BaseTools/Source/C/PyUtility/PyUtility.c106
1 files changed, 0 insertions, 106 deletions
diff --git a/BaseTools/Source/C/PyUtility/PyUtility.c b/BaseTools/Source/C/PyUtility/PyUtility.c
deleted file mode 100644
index 6b3fcaff58..0000000000
--- a/BaseTools/Source/C/PyUtility/PyUtility.c
+++ /dev/null
@@ -1,106 +0,0 @@
-/** @file
-Python Utility
-
-Copyright (c) 2009 - 2014, Intel Corporation. All rights reserved.<BR>
-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.
-
-**/
-
-#include <Python.h>
-#include <Windows.h>
-#include <Common/UefiBaseTypes.h>
-
-/*
- SaveFileToDisk(FilePath, Content)
-*/
-STATIC
-PyObject*
-SaveFileToDisk (
- PyObject *Self,
- PyObject *Args
- )
-{
- CHAR8 *File;
- UINT8 *Data;
- UINTN DataLength;
- UINTN WriteBytes;
- UINTN Status;
- HANDLE FileHandle;
- PyObject *ReturnValue = Py_False;
-
- Status = PyArg_ParseTuple(
- Args,
- "ss#",
- &File,
- &Data,
- &DataLength
- );
- if (Status == 0) {
- return NULL;
- }
-
- FileHandle = CreateFile(
- File,
- GENERIC_WRITE,
- FILE_SHARE_WRITE|FILE_SHARE_READ|FILE_SHARE_DELETE,
- NULL,
- CREATE_ALWAYS,
- FILE_ATTRIBUTE_NORMAL,
- NULL
- );
- if (FileHandle == INVALID_HANDLE_VALUE) {
- PyErr_SetString(PyExc_Exception, "File creation failure");
- return NULL;
- }
-
- while (WriteFile(FileHandle, Data, DataLength, &WriteBytes, NULL)) {
- if (DataLength <= WriteBytes) {
- DataLength = 0;
- break;
- }
-
- Data += WriteBytes;
- DataLength -= WriteBytes;
- }
-
- if (DataLength != 0) {
- // file saved unsuccessfully
- PyErr_SetString(PyExc_Exception, "File write failure");
- goto Done;
- }
-
- //
- // Flush buffer may slow down the whole build performance (average 10s slower)
- //
- //if (!FlushFileBuffers(FileHandle)) {
- // PyErr_SetString(PyExc_Exception, "File flush failure");
- // goto Done;
- //}
-
- // success!
- ReturnValue = Py_True;
-
-Done:
- CloseHandle(FileHandle);
- return ReturnValue;
-}
-
-STATIC INT8 SaveFileToDiskDocs[] = "SaveFileToDisk(): Make sure the file is saved to disk\n";
-
-STATIC PyMethodDef PyUtility_Funcs[] = {
- {"SaveFileToDisk", (PyCFunction)SaveFileToDisk, METH_VARARGS, SaveFileToDiskDocs},
- {NULL, NULL, 0, NULL}
-};
-
-PyMODINIT_FUNC
-initPyUtility(VOID) {
- Py_InitModule3("PyUtility", PyUtility_Funcs, "Utilties Module Implemented C Language");
-}
-
-