12 2016 档案

摘要:int main(int argc, char *argv[]) { unsigned char data[PACKET_MAX_LEN]; int data_len = 0; int socket_fd = -1; //char test_flag = 0; struct sockaddr_in 阅读全文
posted @ 2016-12-28 11:47 丁培飞 阅读(445) 评论(0) 推荐(0) 编辑
摘要:memcpy(data, &apdu[decode_len], apdu_len - decode_len); int i = 0; for(i=0;i<apdu_len;i++) printf("%02x",apdu[i]); 阅读全文
posted @ 2016-12-28 11:37 丁培飞 阅读(211) 评论(0) 推荐(0) 编辑
摘要:查看服务器编码 查看linux的编码,修改为自己需要的,本文将已UTF-8为例进行说明。修改Linux服务器的配置文件:[root@iitshare ~]# vi /etc/sysconfig/i18n如果安装系统的时候选择了中文系统,则把LANG字段改为:LANG=”zh_CN.UTF-8″如果安 阅读全文
posted @ 2016-12-28 10:56 丁培飞 阅读(23599) 评论(0) 推荐(0) 编辑
摘要:编译没有警告,没有错误,运行就打印 段错误 (核心已转储) 网上找了一下,都是各种问题,都推荐用gdb 调试解决,咱也来趁机学习gdb一下。 gcc+gdb)输入命令行 运行 sudo apt-get install build-essential build-essential包含gcc和gdb等 阅读全文
posted @ 2016-12-27 09:54 丁培飞 阅读(4217) 评论(0) 推荐(0) 编辑
摘要:UDP数据通讯原理 UDP数据通讯分服务端(软件)和客户端端: 服务端(软件)(服务器)先运行,服务端,不需要事先知道客户端IP和port 客户端(软件)(客户端机器)后运行,一定是客户端先给服务端发包,客户端一定先知道服务端的IP和port UDP通信实现 1. 头文件 #include <sys 阅读全文
posted @ 2016-12-26 17:59 丁培飞 阅读(833) 评论(0) 推荐(0) 编辑
摘要:由于UDP通信不需要事先建立连接,因此不需要TCP中的connect函数。 服务器端的步骤如下: 1. socket: 建立一个socket 2. bind: 将这个socket绑定在某个端口上(AF_INET) 3. recvfrom: 如果没有客户端发起请求,则会阻塞在这个函数里 4. clos 阅读全文
posted @ 2016-12-26 17:54 丁培飞 阅读(382) 评论(0) 推荐(0) 编辑
摘要:1.在c语言中,函数,声明,调用的类型务必是一致的, 2.主机id:指ip地址最后一个字节,例如,203.86.61.106, >106指主机id, 3,端口号:6789,换成16进制1A85 ,拆分 到两个字节中,指 >1A 85;char类型:1字节 >8位, 阅读全文
posted @ 2016-12-22 18:24 丁培飞 阅读(230) 评论(0) 推荐(0) 编辑
摘要:Linux提供了丰富的帮助手册,当你需要查看某个命令的参数时不必到处上网查找,只要man一下即可。 Linux的man手册共有以下几个章节: 代號 代表內容 1 使用者在shell中可以操作的指令或可执行档 2 系統核心可呼叫的函数与工具等 3 一些常用的函数(function)与函数库(libra 阅读全文
posted @ 2016-12-21 17:02 丁培飞 阅读(716) 评论(0) 推荐(0) 编辑
摘要:1.linux 系统c语言生成.o文件, >gcc -m64 -c -fPIC test.c -o test.o2.linux 系统c语言生成.so文件, >gcc -shared -fPIC libthitudp.so -o test.o -m643.查看生成的文件是否为64位执行文件 >命令:f 阅读全文
posted @ 2016-12-21 14:15 丁培飞 阅读(1054) 评论(0) 推荐(0) 编辑
摘要:ubuntu终端下命令ifconfig的问题解决 问题一. ifconfig之后只显示lo,没有看到eth0 问题二. ifconfig之后显示eth0,但是没有显示静态IP地址,即无inet、地址、广播、掩码。 问题三. ping命令不能使用,因为dns还没设置,编辑/etc/resolv.con 阅读全文
posted @ 2016-12-20 20:16 丁培飞 阅读(5282) 评论(0) 推荐(0) 编辑
摘要:动态库*.so在linux下用c和c++编程时经常会碰到,最近在网站找了几篇文章介绍动态库的编译和链接,总算搞懂了这个之前一直不太了解得东东,这里做个笔记,也为其它正为动态库链接库而苦恼的兄弟们提供一点帮助。1、动态库的编译下面通过一个例子来介绍如何生成一个动态库。这里有一个头文件:so_test. 阅读全文
posted @ 2016-12-20 14:36 丁培飞 阅读(3084) 评论(0) 推荐(0) 编辑
摘要:C程序中,用于实现算法和数据结构 (比如栈和相关的操作)。在同一个程序中,还有用于测试的main()函数,结构体定义,函数原型,typedef等等。 这样的做法非常不“环保”。算法的实际运用和算法的实现混在一起。如果我想要重复使用之前的源程序,必须进行许多改动,并且重新编译。最好的解决方案是实现模块 阅读全文
posted @ 2016-12-20 14:11 丁培飞 阅读(1277) 评论(0) 推荐(0) 编辑
摘要:IPTables基本命令 在向大家介绍复杂防火墙规则之前,还是先上一些简单的料,让大家对IPTables最为基本的命令有一些简单了解。 首先要说明的是IPTables命令必需以root权限运行,这意味着你需要使用root身份登录或者能够有权限使用su或sudo -i取得root Shell。下面的内 阅读全文
posted @ 2016-12-20 00:24 丁培飞 阅读(214) 评论(0) 推荐(0) 编辑
摘要:1.将本地虚拟机网卡设置ip >2.将虚拟机系统的网卡ip设置 >3.虚拟机设置特定网络模式vm8nat模式; (1) (2) (3) 保证正常互ping 通信, 4.在虚拟机系统中打开vsftp server服务 >见博客站内(FTP服务器--vsftpd的安装和配置) 5.在虚拟机系统中打开ss 阅读全文
posted @ 2016-12-19 19:46 丁培飞 阅读(697) 评论(0) 推荐(0) 编辑
摘要:作为最新版本的UBUNTU系统而言,开源,升级全部都不在话下。传说XP已经停止补丁更新了,使用UBUNTU也是一个很好的选择。ubuntu默认安装完成后只有ssh-agent(客户端模式),宾哥百度经验首发教您如何开启Ubuntu13.10中SSH-SERVER服务。 作为最新版本的UBUNTU系统 阅读全文
posted @ 2016-12-19 19:18 丁培飞 阅读(803) 评论(0) 推荐(0) 编辑
摘要:更新源列表 打开"终端窗口",输入"sudo apt-get update"-->回车-->"输入当前登录用户的管理员密码"-->回车,就可以了。如果不运行该命令,直接安装vsftpd,会出现"有 几个软件包无法下载,您可以运行apt-get update "的错误提示,导致无法安装。 更新源列表 阅读全文
posted @ 2016-12-19 15:23 丁培飞 阅读(197) 评论(0) 推荐(0) 编辑
摘要:Linux下的服务如果启动失败,一般是看报错和日志进行排查的 报错看不出什么,那么就看下日志记录了什么/var/log/vsftpd.log; 一般是配置文件有问题 /etc/vsftpd/vsftpd.conf /etc/pam.d/vsftpd 检查下是否修改过什么; 实在不行就虚拟软件安装下v 阅读全文
posted @ 2016-12-19 10:56 丁培飞 阅读(1790) 评论(0) 推荐(0) 编辑
摘要:打开Linux ftp服务,如:vsftpd: unrecognized service [root@BZXXDBS02 ~]# service vsftpd start vsftpd: unrecognized service [root@BZXXDBS02 ~]# 编写: vi /etc/xin 阅读全文
posted @ 2016-12-19 10:54 丁培飞 阅读(8673) 评论(0) 推荐(0) 编辑
摘要:ubuntu 9.10默认的是UFW防火墙,已经支持界面操作了。在命令行运行ufw命令就可以看到提示的一系列可进行的操作。 最简单的一个操作:sudo ufw status可检查防火墙的状态,我的返回的是:不活动 sudo ufw version防火墙版本: ufw 0.29-4ubuntu1 Co 阅读全文
posted @ 2016-12-19 10:33 丁培飞 阅读(253) 评论(0) 推荐(0) 编辑
摘要:2 从system settings 进入language support ,在keyboard input method system 中是看不到自己安装的搜狗输入法的。 从system settings 进入language support ,在keyboard input method sys 阅读全文
posted @ 2016-12-14 14:04 丁培飞 阅读(12014) 评论(0) 推荐(0) 编辑
摘要:简单介绍并实现了基于UDP(TCP)的windows(UNIX下流程基本一致)下的服务端和客户端的程序,本文继续探讨关于UDP编程的一些细节。 下图是一个简单的UDP客户/服务器模型: 我在这里也实现了一个简单的UDP回射服务器/客户端: ? 1 2 3 4 5 6 7 8 9 10 11 12 1 阅读全文
posted @ 2016-12-14 00:40 丁培飞 阅读(452) 评论(0) 推荐(0) 编辑
摘要:linux socket编程之TCP与UDP TCP与UDP区别 TCP 传输控制协议,提供的是面向连接、可靠的字节流服务。当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能传输数据。TCP提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能从一端传到另一端。 U 阅读全文
posted @ 2016-12-14 00:35 丁培飞 阅读(6894) 评论(0) 推荐(1) 编辑
摘要:我刚开始接触linux下的socket编程,边抄边理解udp socket编程,我的疑问是server不指定IP地址,client的目标IP地址是127.0.0.1,这样就可以通信吗?在同一主机下是不是不能测试?如果server默认绑定本机的IP 地址,那么开启server后,在浏览器中输入127. 阅读全文
posted @ 2016-12-14 00:32 丁培飞 阅读(450) 评论(0) 推荐(0) 编辑
摘要:UDP套接字编程范例: server端代码如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 阅读全文
posted @ 2016-12-14 00:31 丁培飞 阅读(680) 评论(0) 推荐(0) 编辑
摘要:发送方: /* * File: main.c * Author: tianshuai * * Created on 2011年11月29日, 下午10:34 * * 主要实现:发送20个文本消息,然后再发送一个终止消息 */ #include <stdio.h> #include <stdlib.h 阅读全文
posted @ 2016-12-14 00:29 丁培飞 阅读(435) 评论(0) 推荐(0) 编辑
摘要:一、概述 TCP(传输控制协议)和UDP(用户数据报协议是网络体系结构TCP/IP模型中传输层一层中的两个不同的通信协议。 TCP:传输控制协议,一种面向连接的协议,给用户进程提供可靠的全双工的字节流,TCP套接口是字节流套接口(stream socket)的一种。 UDP:用户数据报协议。UDP是 阅读全文
posted @ 2016-12-14 00:26 丁培飞 阅读(557) 评论(0) 推荐(0) 编辑
摘要:Linux下的Socket编程大体上包括Tcp Socket、Udp Socket即Raw Socket这三种,其中TCP和UDP方式的Socket编程用于编写应用层的socket程序,是我们用得比较多的,而Raw Socket则用得相对较少,不在本文介绍范围之列。 TCP Socket 基于TCP 阅读全文
posted @ 2016-12-14 00:22 丁培飞 阅读(341) 评论(0) 推荐(0) 编辑
摘要:本次例程的环境是在FC6下,通过终端操作的。 注意要挂载U盘需要有管理员的权限。 切换成管理员,输入: su root 然后输入管理员密码,进行密码认证; 成功后,先在 /mnt 下建立一个名叫USB的文件夹,文件夹名称随意: mkdir /mnt/USB 然后将U盘插入电脑的USB接口,再输入: 阅读全文
posted @ 2016-12-13 22:49 丁培飞 阅读(7293) 评论(0) 推荐(0) 编辑
摘要:在linux中删除一个目录很简单,很多人还是习惯用rmdir,不过一旦目录非空,就陷入深深的苦恼之中,现在使用rm -rf命令即可解决。直接rm就可以了,不过要加两个参数-rf 即:rm -rf 目录名字-r 就是向下递归,不管有多少级目录,一并删除-f 就是直接强行删除,不作任何提示的意思删除文件 阅读全文
posted @ 2016-12-07 23:25 丁培飞 阅读(7310) 评论(0) 推荐(0) 编辑
摘要:copy命令 该命令的功能是将给出的文件或目录拷贝到另一文件或目录中,同MSDOS下的copy命令一样,功能十分强大。 语法: cp [选项] 源文件或目录 目标文件或目录 说明:该命令把指定的源文件复制到目标文件或把多个源文件复制到目标目录中。 该命令的各选项含义如下: - a 该选项通常在拷贝目 阅读全文
posted @ 2016-12-07 22:52 丁培飞 阅读(100148) 评论(0) 推荐(1) 编辑
摘要:1、 在本机系统设置一个共享文件夹,用于与Ubuntu交互的区域空间。 2、右击状态栏上共享文件夹图标或菜单栏“设备-共享文件夹”,打开共享文件夹设置,如图示 3、点击共享文件夹设置框,右上角的添加按钮 选择之前本机设置的共享文件夹 此时一定不可以勾选自动挂载 4、设置好共享名后,进入Linux系统 阅读全文
posted @ 2016-12-07 22:28 丁培飞 阅读(18603) 评论(0) 推荐(0) 编辑
摘要:#pragma是编译器指示字,用域指示编译器完成一些特定动作, #pragma所定义的很多指示字是编译器和操作系统特有的 #pragma在不同的编译器间是不可移植的 预处理器将忽略它不认识的#pragma指令 两个不同的编译器可能以两种不同的方式解释同一条#pragma指令 用法;#pragma p 阅读全文
posted @ 2016-12-06 09:13 丁培飞 阅读(269) 评论(0) 推荐(0) 编辑
摘要:#error message 注:message不需要用双引号包围, #error 编译指示字用于自定义程序特有的编译错误消息类似的, #warning用于生成编译警告,但不会停止编译。 在linux终端定义 gcc -Dadroid40 test.c 在终端定义常量方法,后执行a.out,结果正常 阅读全文
posted @ 2016-12-05 22:56 丁培飞 阅读(722) 评论(0) 推荐(0) 编辑
摘要:【gcc -E test.c -o test.i >预处理文件生成.i 文件。】 1、c语言程序生成过程 C语言程序的生成过程可以简单的分为:编辑、预处理、编译、汇编、链接五个阶断。 下面所有的操作以hello world程序为例,源码文件命名为t.c,源码内容如下: #include <stdio 阅读全文
posted @ 2016-12-02 23:43 丁培飞 阅读(7395) 评论(0) 推荐(0) 编辑
摘要:GCC编译器非常强大 ,在各个发行的Linux系统中都非常流行,本文介绍的是一些常用的gcc编译选项 下面这段代码将回围绕整个文章: 编辑main.c如下. [cpp] view plain copy print? #include<stdio.h> int main(void) { printf( 阅读全文
posted @ 2016-12-02 23:00 丁培飞 阅读(4491) 评论(0) 推荐(0) 编辑
摘要:gcc命令使用GNU推出的基于C/C++的编译器,是开放源代码领域应用最广泛的编译器,具有功能强大,编译代码支持性能优化等特点。现在很多程序员都应用GCC,怎样才能更好的应用GCC。目前,GCC可以用来编译C/C++、FORTRAN、JAVA、OBJC、ADA等语言的程序,可根据需要选择安装支持的语 阅读全文
posted @ 2016-12-02 23:00 丁培飞 阅读(318) 评论(0) 推荐(0) 编辑
摘要:gcc是linux下最常用的一款c编译器,对应于CPP 有相应的g++工具,debug有gdb,只是还不会用。 个人感觉gcc确实是个好东西,完全可以直接在gedit下编程然后写个shell脚本用gcc编译,不比一些IDE麻烦多少,某些IDE实在不但难用而且还会出一些莫名其妙的错误。 1. gcc 阅读全文
posted @ 2016-12-02 22:39 丁培飞 阅读(1193) 评论(0) 推荐(0) 编辑
摘要:1简介 2简单编译 2.1预处理 2.2编译为汇编代码(Compilation) 2.3汇编(Assembly) 2.4连接(Linking) 3多个程序文件的编译 4检错 5库文件连接 5.1编译成可执行文件 5.2链接 5.3强制链接时使用静态链接库 1简介 GCC 的意思也只是 GNU C C 阅读全文
posted @ 2016-12-02 22:38 丁培飞 阅读(296) 评论(0) 推荐(0) 编辑
摘要:linux下getsockopt和setsockopt详解及测试 NAME 名字 getsockopt, setsockopt - get and set options on sockets 获取或者设置套接字的选项 SYNOPSIS 函数原型 参数: sock:将要被设置或者获取选项的套接字。 阅读全文
posted @ 2016-12-01 23:52 丁培飞 阅读(7918) 评论(0) 推荐(0) 编辑
摘要:【 getsockopt/setsockopt系统调用 功能描述: 获取或者设置与某个套接字关联的选 项。选项可能存在于多层协议中,它们总会出现在最上面的套接字层。当操作套接字选项时,选项位于的层和选项的名称必须给出。为了操作套接字层的选项,应该 将层的值指定为SOL_SOCKET。为了操作其它层的 阅读全文
posted @ 2016-12-01 23:47 丁培飞 阅读(8385) 评论(0) 推荐(0) 编辑
摘要:头文件:#include <stdio.h> fopen()是一个常用的函数,用来以指定的方式打开文件,其原型为: FILE * fopen(const char * path, const char * mode); 【参数】path为包含了路径的文件名,mode为文件打开方式。 mode有以下几 阅读全文
posted @ 2016-12-01 23:42 丁培飞 阅读(5431) 评论(0) 推荐(0) 编辑
摘要:Linux 套接字的用户接口. 这个 BSD 兼容套接字是介于用户进程与内核网络协议栈之间的统一接口, 各协议模块属于不同的 协议族 ,如 PF_INET, PF_IPX, PF_PACKET 和 套接字类型 ,如 字节流(SOCK_STREAM) 或 数据报(SOCK_DGRAM). 关于协议族和 阅读全文
posted @ 2016-12-01 23:40 丁培飞 阅读(1566) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示