Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

ÔÚlinuxÏ »ñÈ¡£¬ÐÞ¸Ä×ÓÍøÑÚÂëNETMASKµÄÁ½¸öº¯Êý

//»ñÈ¡×ÓÍøÑÚÂëµÄº¯ÊýQString GetLocalNetMask()
{
int sock_netmask;
char netmask_addr[50];
struct ifreq ifr_mask;
struct sockaddr_in *net_mask;

sock_netmask = socket( AF_INET, SOCK_STREAM, 0 );
if( sock_netmask == -1)
{
perror("create socket failture...GetLocalNetMask\n");
return "";
}

memset(&ifr_mask, 0, sizeof(ifr_mask));
strncpy(ifr_mask.ifr_name, ifname, sizeof(ifr_mask.ifr_name )-1);
if( (ioctl( sock_netmask, SIOCGIFNETMASK, &ifr_mask ) ) < 0 )
{
printf("mac ioctl error\n");
return "";
}

net_mask = ( struct sockaddr_in * )&( ifr_mask.ifr_netmask );
strcpy( netmask_addr, inet_ntoa( net_mask -> sin_addr ) );

printf("local netmask:%s\n",netmask_addr);

close( sock_netmask );
return QString( netmask_addr );
}
//ÐÞ¸Ä×ÓNETMASKµÄº¯Êý
QString SetLocalNetMask(const char *szNetMask)
{
int sock_netmask;
char netmask_addr[32];
struct ifreq ifr_mask;
struct sockaddr_in *sin_net_mask;

sock_netmask = socket( AF_INET, SOCK_STREAM, 0 );
if( sock_netmask == -1)
{
perror("Not create network socket connect\n");
return "";
}

memset(&ifr_mask, 0, sizeof(ifr_mask));
strncpy(ifr_mask.ifr_name, "eth0", sizeof(ifr_mask.ifr_name )-1);
sin_net_mask = (struct sockaddr_in *)&ifr_mask.ifr_addr;
sin_net_mask -> sin_family = AF_INET;
inet_pton(AF_INET, szNetMask, &sin_net_mask ->sin_addr);
if(ioctl(sock_netmask, SIOCSIFNETMASK, &ifr_mask ) < 0)
{
printf("sock_netmask ioctl error\n");
return "";
}
}


Ïà¹ØÎĵµ£º

ʵսLinux Bluetooth±à³Ì(Áù) L2CAP±à³ÌʵÀý

ÀýÒ»£º·¢ËÍSignaling Packet£º
Signaling CommandÊÇ2¸öBluetoothʵÌåÖ®¼äµÄL2CAP²ãÃüÁî´«Êä¡£ËùÒÔµÃSignaling CommandʹÓÃCID 0x0001.
¶à¸öCommand¿ÉÒÔÔÚÒ»¸öC-frame£¨control frame£©Öз¢ËÍ¡£
 Èç¹ûÒªÖ±½Ó·¢ËÍSignaling Command.ÐèÒª½¨Á¢SOCK_RAWÀàÐ͵ÄL2CAPÁ¬½ÓSocket¡£ÕâÑù²ÅÓлú»á×Ô¼ºÌî³äCommand Code£¬Identi ......

Linux Platform Device and Driver

    
´Ó
Linux 2.6
ÆðÒýÈëÁËÒ»Ì×еÄÇý¶¯¹ÜÀíºÍ×¢²á»úÖÆ :Platform_device
ºÍ Platform_driver
¡£
     Linux
Öд󲿷ֵÄÉ豸Çý¶¯£¬¶¼¿ÉÒÔʹÓÃÕâÌ×»úÖÆ ,
É豸ÓÃ
Platform_device
±íʾ£¬Çý¶¯ÓÃ
Platform_driver
½øÐÐ×¢²á¡£

     Linu ......

LinuxÔõôѧ


һ.ΪʲôҪѧlinux?
http://ph4nt0m.net/bbs/showthread.php?threadid=22510
http://ph4nt0m.net/bbs/showthread.php?threadid=857
µ±È»Èç¹ûûÓÐÕâÖÖ±ØÒª£¬Çë²»ÒªÀË·Ñʱ¼ä
¶þ.Æð²½
ÄãÓ¦¸ÃΪ×Ô¼º´´ÔìÒ»¸öѧϰlinuxµÄ»·¾³--ÔÚµçÄÔÉÏ×°Ò»¸ölinux»òunix
ÎÊÌâ1£º°æ±¾µÄÑ¡Ôñ
±±ÃÀÓÃredhat,Å·ÖÞÓÃSuSE,×ÀÃæmandra ......

LinuxÐéÄâ»úÎÞ·¨ÁªÍøµÄÖÕ¼«½â¾ö°ì·¨

ÓÐʱÓöµ½ÈçÏÂÎÊÌâ£¬Íø¿¨ÉÏÓиö²æ£¬ÈκÎÃüÁî¶¼ÎÞ·¨ÐÞ¸´¡£
·¢ÏÖÍø¿¨ºì²æÖ®Ç°ÊÔ¹ýÏÂÃæÃüÁ¿Ï¶¨¶¼²»Ðеġ£
sudo ifconfig eth0 down
sudo ifconfig eth0 up
sudo /etc/init.d/dhcp3-server restart
sudo /etc/init.d/networking restart
ÎÊÌâ½â¾öºÜ¼òµ¥£¬°ÑÈçϵĸ´Ñ¡¿ò¹´Éϼ´¿É£¬ÐéÄâ»ú¿ª» ......

ÔÚlinuxÏ »ñÈ¡£¬Ð޸ı¾»úIPµØÖ·µÄÁ½¸öº¯Êý

//»ñÈ¡±¾»úIPµØÖ·º¯Êý
QString GetLocalIp()
{
int sock_get_ip;
char ipaddr[50];
struct sockaddr_in *sin;
struct ifreq ifr_ip;
if ((sock_get_ip=socket(AF_INET, SOCK_STREAM, 0)) == -1)
{
printf("socket create failse...GetLocalIp!\n");
return ""; ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ