elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


  Mostrar Temas
Páginas: [1] 2 3
1  Sistemas Operativos / GNU/Linux / systemctl list-dependencies --reverse/--before/--after/--all en: 8 Octubre 2020, 13:07 pm
Hola amigos. Me estoy proponiendo deshabilitar algunos servicios que pueden ser prescindibles en mi debian, pero no acabo de comprender bien como funcionan y en que se diferencian los flags --reverse, --before, --after, --all.
No acabo de captar bien los matices que los diferencia, a pesar de haber googleado bastante, no acabo de enterarme. ¿Alguien podría explicarmelo? Gracias, un saludo.
2  Sistemas Operativos / GNU/Linux / Al cargar el Escritorio linux, ratón y teclado no responden en: 6 Octubre 2020, 19:24 pm
Hola a todos.

Tengo un problema que necesito solucionar cuanto antes. Tras reiniciar ubuntu version 20.04, me deja meter la contraseña de mi usuario con total normalidad, y cuando va a cargar el escritorio, se inicia normalmente, todo carga, pero el ratón y teclado no responden. ¿Alguien sabe por qué puede ser?

Muchas gracias de antemano. Un saludo.
3  Programación / Programación C/C++ / chdir() no funciona como pretendo en c en: 28 Septiembre 2020, 21:47 pm
Hola amigos. Estoy haciendo una shell en c como ejercicio práctico. Estaba implementando el equivalente a "cd" en la shell de linux. Funciona de maravilla, exceptuando que si tu quieres retroceder un directorio poniendo "cd ..", lo que sucede es que retrocede dos directorios, es decir... Si estás en /home/usario/Escritorio, te lleva a /home.

La función es esta, aunque no creo que esté mal. Sabéis como se puede solucionar?

Código:
void cddir(char *tr) {
    if(chdir(tr)==0) {
        chdir(tr);
    } else {
        printf("%s %s\n", "No existe el directorio: ", tr);
    }
}

Gracias.
4  Programación / Programación C/C++ / Problema pasar matriz por referencia a una función en C en: 25 Septiembre 2020, 13:49 pm
Hola amigos, estoy tratando de hacer una función que trocea una cadena, y la separa en los espacios, guardando cada palabra en una fila de la matriz. Para eso la paso por referencia (es decir, con un puntero) a la función trocear(), que ya he comprobado que funciona. Mi problema es que una vez que trocea, y en teoría se modifican los datos, no sé como acceder a los datos guardados. Paso código.
Código
  1. int trocear(char * cadena, char * trozos[])
  2. {
  3.        int i=1;
  4. if ((trozos[0]=strtok(cadena," \n\t"))==NULL){
  5. return 0;
  6. //printf("%s\n", trozos[0]);
  7. }
  8. while ((trozos[i]=strtok(NULL," \n\t"))!=NULL){
  9. //printf("%s\n", trozos[i]);
  10. i++;
  11. }
  12. return i;
  13. }
  14.  
  15. /*****************************************************************/
  16.  
  17. void procesarEntrada(char entrada[]){
  18. char trozos[10][10];
  19. //char *tr;
  20. char *tr;
  21. tr = trozos[0];
  22. trocear(entrada, &tr);
  23. }

Gracias de antemano. Un saludo.


MOD: Etiquetas de código GeSHi adaptadas a lenguaje C
5  Programación / Programación C/C++ / conflictin types for ... (pasando mode_t como parámetro) en: 23 Octubre 2019, 13:56 pm
Hola gente. Estoy realizando un pequeño proyecto en el cual pretendo imitar un shell, y en este caso estoy diseñando una función que haga lo mismo que el 'ls -li' del shell de Linux. Esta entre otras cosas me debe de mostrar los permisos del archivo. Para ello uso una función, a la cual se le pasa por parámetro un mode_t, y me tendría que devolver un puntero de tipo char (string).
Al intentar compilar el proyecto me da un error de 'conflicting types for 'ConvierteModo2''.
Las librerías necesarias las tengo todas importadas, y he probado a hacerlo de forma chapuza, y no modularizada, y así funciona. De aquí saco como conclusión que el problema viene de que no me lee bien el mode_t pasado por parámetro, o bien que el hecho de que me devuelva un puntero a un char falle en algún punto...

Este es el código:

Código:
else if (strcmp( entrada,"info")==0) {
        char *permiso;
        char path[]="/home/julian/Escritorio/a.out";
        permiso=(char *) malloc (12);
        struct stat a;
        stat(/*trim(tr[1])*/path, &a);
        permiso=ConvierteModo2(a.st_mode);

Código:
char *ConvierteModo2 (mode_t m) {
    static char permisos[12];
    strcpy (permisos,"---------- ");
    permisos[0]=TipoFichero(m);
    if (m&S_IRUSR) permisos[1]='r';  /*propietario*/
    if (m&S_IWUSR) permisos[2]='w';
    if (m&S_IXUSR) permisos[3]='x';
    if (m&S_IRGRP) permisos[4]='r';   /*grupo*/
    if (m&S_IWGRP) permisos[5]='w';
    if (m&S_IXGRP) permisos[6]='x';
    if (m&S_IROTH) permisos[7]='r';   /*resto*/
    if (m&S_IWOTH) permisos[8]='w';
    if (m&S_IXOTH) permisos[9]='x';
    if (m&S_ISUID) permisos[3]='s';  /*setuid, setgid y stickybit*/
    if (m&S_ISGID) permisos[6]='s';
    if (m&S_ISVTX) permisos[9]='t';
    return (permisos);
}

Alguien podría echarme una mano? Gracias de antemano.
6  Informática / Hardware / No puedo entrar en la BIOS en: 7 Octubre 2019, 18:24 pm
Hola amigos, mi gran problema es que no puedo entrar en la BIOS de un ordenador antiguo que tenía (2006 aprox). Quiero instalarle linux, y no puedo.
He probado a resetear la BIOS y no ha dado solución, entre otras cosas.
En el caso de mi pc, para entrar en la bios, hay que pulsar la tecla DEL, pero cuando la pulsas, no te abre la bios, sino el administrador de arranque de Windows, (un poco extraño), con la única opción de seleccionar mi Windows 7.
He probado cambiar la pila del pc, quitarsela durante un tiempo y cosas varias... Nada sirvió hasta ahora.
Tambien he intentado instalar linux desde el boot menu, pero no detecta mi pen con ninguna de las opciones que este menu me ofrece.
Ojalá sepan como solucionar esto. Gracias de antemano y un saludo.
7  Programación / Programación C/C++ / Cambio de directorio actual desde programa C en: 2 Octubre 2019, 18:59 pm
Hola amigos, estoy realizando un pequeño proyecto para el cual necesito saber como cambiar el directorio actual desde C. Por mucho que he googleado, no he encontrado nada. Sería como un "cd" del terminal, pero en C. Alguien tiene idea? Gracias. Un saludo.
8  Programación / Programación C/C++ / Array de punteros en C en: 1 Octubre 2019, 12:30 pm
Hola amigos, estoy diseñando un pequeño programa en C, que tiene varios comandos sencillos.
No hay ningún problema con ninguno de ellos, excepto con uno, que tiene devolverme los comandos que se han introducido por teclado históricamente. Sería valga la redundancia, como una especie de historial. Pero ojo, debe almacenar tanto los comandos que existen en el programa, como los que no existen y se meten erróneamente por por teclado.
Esto lo quiero resolver con un array de punteros, de forma que cada vez que se introduzca algo por teclado, de manera que con cada vez que se introduzca algo diferente, un nuevo puntero del array apunte a la direccion de memoria de ese comando.
Mi problema es que no se como hacer nada de punteros, ni de array de punteros. Alguien podría echarme una mano y explicarme como sería el procedimiento?
9  Programación / Java / java.lang.NullPointerException en funcion para polimeros en: 25 Septiembre 2019, 20:32 pm
 Hola amigos, estoy haciendo una función para calcular polímeros, básicamente lo que hace el programa es que si hay dos letras consecutivas que son la misma, una mayúscula y la otra minúscula, se eliminan las dos, y se ejecuta hasta que ya no queden casos como esos. Un ejemplo: AbCcBD--->AbBD--->AD.
El problema es que al declarar una variable para que me almacene la longitud del string que contiene la cadena con la que se va a trabajar, haciendo un test, en algún caso, me indica que ahí hay un NullPointerException. Aquí os dejo el código.

Código:
public static String processPolymer(String polymer) {
        int longitud=polymer.length();
        //String toret=polymer;
        boolean acabado=false;
        //if(polymer.length()>1){
        while (acabado==false){
            acabado=true;
            //int longitud=polymer.length();
            for(int i=0;i<longitud-1;i++){
                char a=polymer.charAt(i);
                char b=polymer.charAt(i+1);
               
                if((Character.isUpperCase(a)&&Character.isLowerCase(b)) || (Character.isUpperCase(b)&&Character.isLowerCase(a))){
                    if(Character.toUpperCase(a)==Character.toUpperCase(b)){
                        acabado=false;
                        String prim=Character.toString(a);
                        String seg=Character.toString(b);
                        polymer=polymer.replace(prim+seg,"");
                        longitud=polymer.length();
                    }
                }
            }
            polymer=polymer.trim();
            //System.out.println(polymer);
        }
        //}
        return polymer;
    }

Muchas gracias amigos, un saludo.
10  Programación / Java / java.lang.ArrayIndexOutOfBoundsException en funcion en: 18 Septiembre 2019, 13:58 pm
Hola amigos, estoy realizando un pequeño ejercicio donde intento comprobar si una matriz cualquiera es cuadrada, es decir, que tiene tantas filas como columnas. Para ello he diseñado un algoritmo, pero al ejecutarlo me da esa excepción. No consigo ver en que momento me salgo fuera del array. Aquí les dejo el código:

Código:
public  static  boolean  isSquare(int [][] a) { 
        boolean cuadrado=true;
        int p=0;
        while(cuadrado==true&&p<=a.length){
            if(a[p].length==a.length){
                p++;
            }
            else{
                cuadrado=false;
            }
        }
        return cuadrado; 
    }

Gracias de antemano
Páginas: [1] 2 3
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines