summaryrefslogtreecommitdiffstats
path: root/pyanaconda/isys
diff options
context:
space:
mode:
authorVratislav Podzimek <vpodzime@redhat.com>2012-07-23 14:01:00 +0200
committerVratislav Podzimek <vpodzime@redhat.com>2012-08-08 14:24:01 +0200
commit567910ca153439997c7b210afdcab2daa5de0093 (patch)
treed5267a24c8faa064e18641828bce634566efe44d /pyanaconda/isys
parent170c6f56d76e0b610b2843c155c36b885af7b578 (diff)
downloadanaconda-567910ca153439997c7b210afdcab2daa5de0093.tar.gz
anaconda-567910ca153439997c7b210afdcab2daa5de0093.tar.xz
anaconda-567910ca153439997c7b210afdcab2daa5de0093.zip
Remove our loadKeymap code from isys
It is used only in the text mode and it should be possible to replace it with calling 'loadkeys' command in the new text mode.
Diffstat (limited to 'pyanaconda/isys')
-rwxr-xr-xpyanaconda/isys/__init__.py6
-rw-r--r--pyanaconda/isys/isys.c1
-rw-r--r--pyanaconda/isys/lang.c108
-rw-r--r--pyanaconda/isys/lang.h18
4 files changed, 0 insertions, 133 deletions
diff --git a/pyanaconda/isys/__init__.py b/pyanaconda/isys/__init__.py
index fc766fcf4..63edbf626 100755
--- a/pyanaconda/isys/__init__.py
+++ b/pyanaconda/isys/__init__.py
@@ -171,12 +171,6 @@ def swapoff (path):
def swapon (path):
return _isys.swapon (path)
-## Load a keyboard layout for text mode installs.
-# @param keymap The keyboard layout to load. This must be one of the values
-# from rhpl.KeyboardModels.
-def loadKeymap(keymap):
- return _isys.loadKeymap (keymap)
-
def resetResolv():
return _isys.resetresolv()
diff --git a/pyanaconda/isys/isys.c b/pyanaconda/isys/isys.c
index 8c4eb4b9e..35b2f3387 100644
--- a/pyanaconda/isys/isys.c
+++ b/pyanaconda/isys/isys.c
@@ -126,7 +126,6 @@ static PyMethodDef isysModuleMethods[] = {
{ "resetresolv", (PyCFunction) doResetResolv, METH_VARARGS, NULL },
{ "swapon", (PyCFunction) doSwapon, METH_VARARGS, NULL },
{ "swapoff", (PyCFunction) doSwapoff, METH_VARARGS, NULL },
- { "loadKeymap", (PyCFunction) doLoadKeymap, METH_VARARGS, NULL },
{ "vtActivate", (PyCFunction) doVtActivate, METH_VARARGS, NULL},
{ "isPseudoTTY", (PyCFunction) doisPseudoTTY, METH_VARARGS, NULL},
{ "isVioConsole", (PyCFunction) doisVioConsole, METH_NOARGS, NULL},
diff --git a/pyanaconda/isys/lang.c b/pyanaconda/isys/lang.c
index 07dee56ff..c38b1bb81 100644
--- a/pyanaconda/isys/lang.c
+++ b/pyanaconda/isys/lang.c
@@ -56,111 +56,3 @@ int isysSetUnicodeKeymap(void) {
return 0;
}
-/* the file pointer must be at the beginning of the section already! */
-int loadKeymap(gzFile stream) {
- int console;
- int kmap, key;
- struct kbentry entry;
- int keymaps[MAX_NR_KEYMAPS];
- int count = 0;
- unsigned int magic;
- short keymap[NR_KEYS];
- struct stat sb;
-
-#if defined (__s390__) || defined (__s390x__)
- return 0;
-#endif
- if (isVioConsole())
- return 0;
-
- /* assume that if we're already on a pty loading a keymap is silly */
- fstat(0, &sb);
- if (major(sb.st_rdev) == 3 || major(sb.st_rdev) == 136)
- return 0;
-
- if (gzread(stream, &magic, sizeof(magic)) != sizeof(magic))
- return -EIO;
-
- if (magic != KMAP_MAGIC) return -EINVAL;
-
- if (gzread(stream, keymaps, sizeof(keymaps)) != sizeof(keymaps))
- return -EINVAL;
-
- console = open("/dev/tty0", O_RDWR);
- if (console < 0)
- return -EACCES;
-
- for (kmap = 0; kmap < MAX_NR_KEYMAPS; kmap++) {
- if (!keymaps[kmap]) continue;
-
- if (gzread(stream, keymap, sizeof(keymap)) != sizeof(keymap)) {
- close(console);
- return -EIO;
- }
-
- count++;
- for (key = 0; key < NR_KEYS; key++) {
- entry.kb_index = key;
- entry.kb_table = kmap;
- entry.kb_value = keymap[key];
- if (KTYP(entry.kb_value) != KT_SPEC) {
- if (ioctl(console, KDSKBENT, &entry)) {
- int ret = errno;
- close(console);
- return ret;
- }
- }
- }
- }
- close(console);
- return 0;
-}
-
-int isysLoadKeymap(char * keymap) {
- int num = -1;
- int rc;
- gzFile f;
- struct kmapHeader hdr;
- struct kmapInfo * infoTable;
- char buf[16384]; /* I hope this is big enough */
- int i;
-
- f = gzopen("/etc/keymaps.gz", "r");
- if (!f) return -EACCES;
-
- if (gzread(f, &hdr, sizeof(hdr)) != sizeof(hdr)) {
- gzclose(f);
- return -EINVAL;
- }
-
- i = hdr.numEntries * sizeof(*infoTable);
- infoTable = alloca(i);
- if (gzread(f, infoTable, i) != i) {
- gzclose(f);
- return -EIO;
- }
-
- for (i = 0; i < hdr.numEntries; i++)
- if (!strcmp(infoTable[i].name, keymap)) {
- num = i;
- break;
- }
-
- if (num == -1) {
- gzclose(f);
- return -ENOENT;
- }
-
- for (i = 0; i < num; i++) {
- if (gzread(f, buf, infoTable[i].size) != infoTable[i].size) {
- gzclose(f);
- return -EIO;
- }
- }
-
- rc = loadKeymap(f);
-
- gzclose(f);
-
- return rc;
-}
diff --git a/pyanaconda/isys/lang.h b/pyanaconda/isys/lang.h
index b5ff4da45..aac821aff 100644
--- a/pyanaconda/isys/lang.h
+++ b/pyanaconda/isys/lang.h
@@ -20,24 +20,6 @@
#ifndef ISYS_LANG_H
#define ISYS_LANG_H
-#include <zlib.h>
-
-/* define ask johnsonm@redhat.com where this came from */
-#define KMAP_MAGIC 0x8B39C07F
-#define KMAP_NAMELEN 40 /* including '\0' */
-
-struct kmapHeader {
- int magic;
- int numEntries;
-};
-
-struct kmapInfo {
- int size;
- char name[KMAP_NAMELEN];
-};
-
-int loadKeymap(gzFile stream);
-int isysLoadKeymap(char * keymap);
int isysSetUnicodeKeymap(void);
#endif