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

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


  Mostrar Mensajes
Páginas: 1 ... 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 [375] 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 ... 1750
3741  Programación / Programación C/C++ / Re: const vs define en: 15 Agosto 2017, 19:16 pm
const declara un espacio estático de memoria dentro del programa, define es una directiva (macro) de preprocesador que lo que hace es sobreescribir el codigo antes de compilar...
 
ejemplo de define...

este programa

Código
  1. #define mult( f1, f2 ) ( f1 * f2 )
  2. #define valor 50
  3.  
  4. int main(){
  5.  
  6.  int a = 1;
  7.  int b = valor;
  8.  
  9.  int c = mult(a,b);
  10.  
  11.  return 0;
  12. }

si estás en linux, puedes usar el comando gcc -E archivo.c para que en lugar de compilar, te muestre el archivo despues de ser pasado por el preprocesador, verás que se covierte en

Código
  1. int main(){
  2.  
  3.  int a = 1;
  4.  int b = 50;
  5.  
  6.  int c = ( a * b );
  7.  
  8.  return 0;
  9. }

y esto ultimo será lo que se compile
3742  Informática / Electrónica / Re: Arduino, C++ , Puerto Serial o USB y Linux en: 15 Agosto 2017, 03:06 am
ahh perfecto, eso está mas claro!


el leer serial te puede dar algunos dolores de cabeza al principio porque es una conexión en stream

fijate este tema... es en C

el auto usa esto

Código
  1. #include <errno.h>
  2. #include <fcntl.h>
  3. #include <string.h>
  4. #include <termios.h>
  5. #include <unistd.h>
  6.  
  7. int
  8. set_interface_attribs (int fd, int speed, int parity)
  9. {
  10.        struct termios tty;
  11.        memset (&tty, 0, sizeof tty);
  12.        if (tcgetattr (fd, &tty) != 0)
  13.        {
  14.                error_message ("error %d from tcgetattr", errno);
  15.                return -1;
  16.        }
  17.  
  18.        cfsetospeed (&tty, speed);
  19.        cfsetispeed (&tty, speed);
  20.  
  21.        tty.c_cflag = (tty.c_cflag & ~CSIZE) | CS8;     // 8-bit chars
  22.        // disable IGNBRK for mismatched speed tests; otherwise receive break
  23.        // as \000 chars
  24.        tty.c_iflag &= ~IGNBRK;         // disable break processing
  25.        tty.c_lflag = 0;                // no signaling chars, no echo,
  26.                                        // no canonical processing
  27.        tty.c_oflag = 0;                // no remapping, no delays
  28.        tty.c_cc[VMIN]  = 0;            // read doesn't block
  29.        tty.c_cc[VTIME] = 5;            // 0.5 seconds read timeout
  30.  
  31.        tty.c_iflag &= ~(IXON | IXOFF | IXANY); // shut off xon/xoff ctrl
  32.  
  33.        tty.c_cflag |= (CLOCAL | CREAD);// ignore modem controls,
  34.                                        // enable reading
  35.        tty.c_cflag &= ~(PARENB | PARODD);      // shut off parity
  36.        tty.c_cflag |= parity;
  37.        tty.c_cflag &= ~CSTOPB;
  38.        tty.c_cflag &= ~CRTSCTS;
  39.  
  40.        if (tcsetattr (fd, TCSANOW, &tty) != 0)
  41.        {
  42.                error_message ("error %d from tcsetattr", errno);
  43.                return -1;
  44.        }
  45.        return 0;
  46. }
  47.  
  48. void
  49. set_blocking (int fd, int should_block)
  50. {
  51.        struct termios tty;
  52.        memset (&tty, 0, sizeof tty);
  53.        if (tcgetattr (fd, &tty) != 0)
  54.        {
  55.                error_message ("error %d from tggetattr", errno);
  56.                return;
  57.        }
  58.  
  59.        tty.c_cc[VMIN]  = should_block ? 1 : 0;
  60.        tty.c_cc[VTIME] = 5;            // 0.5 seconds read timeout
  61.  
  62.        if (tcsetattr (fd, TCSANOW, &tty) != 0)
  63.                error_message ("error %d setting term attributes", errno);
  64. }

y para usarlo
Código
  1. char *portname = "/dev/ttyUSB1";
  2. int fd = open (portname, O_RDWR | O_NOCTTY | O_SYNC);
  3. if (fd < 0)
  4. {
  5.        error_message ("error %d opening %s: %s", errno, portname, strerror (errno));
  6.        return;
  7. }
  8.  
  9. set_interface_attribs (fd, B115200, 0);  // set speed to 115,200 bps, 8n1 (no parity)
  10. set_blocking (fd, 0);                // set no blocking
  11.  
  12. write (fd, "hello!\n", 7);           // send 7 character greeting
  13.  
  14. usleep ((7 + 25) * 100);             // sleep enough to transmit the 7 plus
  15.                                     // receive 25:  approx 100 uS per char transmit
  16. char buf [100];
  17. int n = read (fd, buf, sizeof buf);  // read up to 100 characters if ready to read




aquí hay otra solución... una librería en C++ para leer serial

http://libserial.sourceforge.net/


aquí un ejemplo de uso en
lectura
https://github.com/crayzeewulf/libserial/blob/master/examples/read_port.cpp
un ejemplo de uso de escritura
https://github.com/crayzeewulf/libserial/blob/master/examples/write_port.cpp












asegurate de tener permisos de lectura y escritura agregando tu usuario al respectivo grupo del puerto serial usb (usualmente dialout)


3743  Informática / Electrónica / Re: Arduino, C++ , Puerto Serial o USB y Linux en: 15 Agosto 2017, 02:39 am
si tienes un arduino uno, el ya tiene conexión usb, y por medio de el se comunica en protocolo serial... con buscar en google "ejemplos arduino serial" tienes bastante para probar...

sobre el led con el lm35, es simplemente un analogRead a tu respectivo puerto conectado y comparar con tu umbral, si es mayor cambias el puerto del led a encendido

lee el material sobre lo basico de arduino, esto que propones es literalmente explicación de entrada... y si te trancas en algo o tienes una duda puntual, hazla en este mismo tema
3744  Foros Generales / Foro Libre / Re: Canales, videos o algo que deba leer sobre INFORMATICA en: 15 Agosto 2017, 01:04 am
te recomiendo esta lista de videos... informática desde como empezó en papel y toooooodo lo relacionado a las computadoras en muchos aspectos...

la lista:
https://www.youtube.com/watch?v=tpIctyqH29Q&index=1&list=PL8dPuuaLjXtNlUrzyH5r6jN9ulIgZBpdo


el video
3745  Foros Generales / Foro Libre / Re: Aplicacion para ocultar fotos/videos/archivos sin que se guarden en la nueve en: 15 Agosto 2017, 00:47 am
olvidalo... podrías buscar usar algún programa que te permita mantener una particion cifrada en tu sd... eso si, esto tendrá una carga constante en ram y procesador, lo que se traducirá en lentitud del equipo y reducción del tiempo de la batería
3746  Seguridad Informática / Seguridad / Re: protocol icmp en: 15 Agosto 2017, 00:44 am
el flood si es mitigable... pero la saturación de red no...

te explico...

el flood se basa en usar paquetes específicos para atacar un servidor (por ejemplo un servidor http) tal que se envían muchas peticiones en busca de saturar la ram o el procesador con paquetes en espera... eso con simplemente bloquear las ip basta...

sin embargo saturación es más como si tu contrincante para evitar que compren en tu tienda manda a mil personas a preguntar a tu puerta... tu puedes prohibirles el paso a tu tienda (tu pc bloqueando el protocolo) pero igual en tu puerta se acumularán bloqueando el paso de clientes legitimos (desde el internet hasta tu modem) es como si tu mismo descargaras un archivo muy pesado a maxima velocidad, tu red se satura por eso mismo... y eso es lo que indicas que es

Citar
me han tirado ya veces la conexion mandandome paquetes desde conexiones mas rapidas que la mia

esto no es por ping (icmp)... si lo haces por ping, el atacante se satura más rápido que el atacado (eso se hacía en los años 90 con "el ping de la muerte") pero hoy dia se hace con cualquier paquete con doble objetivo, que sea saturación e inundación (flood a cualquier protocolo)


tu opción es ocultarte tras un servidor que pueda soportar un ataque de saturación (un vpn que seguro tendrá una conexión de 500mbps o más y si tiene problema hará balanceo)
3747  Seguridad Informática / Seguridad / Re: protocol icmp en: 14 Agosto 2017, 23:57 pm
Si se puede bloquear y no afecta

Sin embargo no es la única forma de detectar un equipo (especialmente si se está comunicando en internet a un lugar puntual) el ataque de denegación por saturación de banda, lamentablemente no es mitigable desde el equipo afectado, puedes usar un vpn para evitar el ataque, a cambio de un aumento en la latencia
3748  Foros Generales / Dudas Generales / Re: duda trazado de paquetes y tiempo en: 14 Agosto 2017, 19:54 pm
Hola!

a los dns:
si usas los dns de google, tu pc para obtener la ip del dominio preguntará a google por ellos... listo, fin del proceso... esto sucederá una vez cada algunos minutos...

sobre el tiempo de respuesta, es una mezcla de factores... si, teoricamente entre más lejos, más tardará el paquete... pero tambien influirá la calidad de los equipos del isp y la carga de tu red...
3749  Programación / Desarrollo Web / Re: Problema con resposive usando varios tamaños en: 14 Agosto 2017, 14:16 pm
Caché del navegador? Cada vez que recargas limpias el caché?

En chrome la manera simple es recargar presionando ctrl+f5
3750  Sistemas Operativos / GNU/Linux / Re: [AYUDA] Instalar kali linux en disco d en: 14 Agosto 2017, 14:12 pm
Has intentado algún tutorial?

Si tienes datos en el disco a particionar es delicado porque puedes perderlos, asegura los datos, crea las particiones con el Linux en live usando gparted y listo...

Que tal si en lugar de usar kali, usas un Linux estable y seguro?
Páginas: 1 ... 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 [375] 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 ... 1750
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines