新修改的:
; d9 A( t* `# V1 b[QUOTE] B6 o2 A9 `9 `& m2 ^0 d, J2 q) o
#include <sys/types.h>
# b* n- C) D2 w1 r#include <sys/socket.h>3 e# B7 z' U' N5 u; r0 X
#include <stdio.h>2 c& o0 ?5 e! }7 a
#include <sys/un.h>
7 b, s1 o6 `3 z/ E& o2 z#include <unistd.h>
6 W9 Z3 Y4 B) z; G! D# N M0 N2 wint main()0 e' q( V$ x( |' d
{3 \1 \3 ?& E% ~' v3 `" k
1 p5 S3 j4 S9 h B2 y u int server_sockfd,client_sockfd;
) r# Z I6 F: n$ Z int server_len,client_len,status;
% w# J, R# K3 u struct sockaddr_un server_address;
H) ^/ s% b( [' `6 L& Y J struct sockaddr_un client_address;, Z& {1 o7 I2 ]5 \' z% ~3 j* [: t
! R0 Y3 ]& l( @4 d. s
' y; O) w" O R5 H! r// unlink("server_socket");3 J. x, [# V( \$ G, w% g$ N0 u
server_sockfd=socket(AF_UNIX,SOCK_STREAM,0);
" g7 g( r5 p; x* p8 T7 M( x printf("socket return is %d\n",server_sockfd);3 r4 S+ ^( V! ~/ \4 F1 X
perror("socket is");
3 f+ D5 g8 v' N! A server_address.sun_family=AF_UNIX;
9 b/ W( e1 o: R strcpy(server_address.sun_path,"server_socket");4 t8 c) [. z5 x. B# d9 M
server_len=sizeof(server_address);
( e2 H5 r' o* W4 Q4 e status = bind(server_sockfd,(struct sockaddr *)&server_address,server_len);
. q: O7 v: K, y0 a+ `: [ if (status == -1)0 M6 f7 L. A4 C8 I) l$ o% n. k
perror("bind is ");
0 C1 {0 U; K! R. W1 @* R' F7 T printf("bind status is %d\n",status);
& F2 S8 O9 f8 S; a listen(server_sockfd,5);
9 z, w- {4 Q4 _9 U! M! B 2 i9 I: \0 m: }, r
while(1) {; }5 [: B: B, s* W# ]' r7 X
char ch;
* [, X, Z/ r, N8 A$ T printf("server waiting\n");
6 K4 l# j& G2 t/ `6 L5 L client_len=sizeof(client_address);7 K* U, X* S, N' e' u9 Q" o
sleep(2);
( P2 c* [; q. t5 B8 q client_sockfd=accept(server_sockfd,(struct sockaddr *)&client_address,&client_len);
8 J7 u V; W- h+ |% D$ M read(client_sockfd,&ch,1);
. }* n% D5 J% l. |% h ch++;
3 J4 n( w8 @ o9 F. ]+ k* L/ K write(client_sockfd,&ch,1);
6 O- g. Z, e$ n) ? close(client_sockfd);4 t, e' `, I$ B' B2 @3 [1 }
}1 c4 E( q* x3 x) K* }- B+ B
}
1 e+ e: }! X) u+ }. s( ^
' H, K% T" J- L f运行返回是:* E7 L) N4 P: A7 t8 B0 g. U& [! h
root@localhost cx]# ./fuwu8 |* N }( C9 [8 E
socket return is 3. U2 Z( {9 d: r1 Q; ?0 U4 V; P
socket is: Success
) x3 u0 R4 m, o w+ u+ bbind is : Operation not permitted
: f x9 B7 {6 w$ E1 _bind status is -19 S5 c# A: Y+ W* \% F
server waiting* H. n) T {0 K$ f
server waiting6 l: t, G) ]0 w" U
5 o2 _- M6 w# F5 K8 k
% d, }% g- u- L' t0 E
) N4 w; D ~- B! J: v
[/QUOTE]
0 ^+ k* J1 n7 {% @. d' kbind is : Operation not permitted 是什么问题?我是以vroot 身份运行的啊.