Subversion Repositories HelenOS

Compare Revisions

Ignore whitespace Rev 4736 → Rev 4735

/branches/network/uspace/srv/net/app/print_error.c
133,8 → 133,6
case EINPROGRESS:
fprintf( output, "Another operation in progress (%d) error", error_code );
break;
case EDESTADDRREQ:
fprintf( output, "Destination address required (%d) error", error_code );
default:
fprintf( output, "Other (%d) error", error_code );
}
/branches/network/uspace/srv/net/include/socket_errno.h
51,21 → 51,15
////#define EINVAL (-10022)
////#define EMFILE (-10024)
//#define EWOULDBLOCK (-10035)
 
/** An API function is called while another blocking function is in progress.
*/
#define EINPROGRESS (-10036)
 
//#define EALREADY (-10037)
 
/** The socket identifier is not valid.
*/
#define ENOTSOCK (-10038)
 
/** The destination address required.
*/
#define EDESTADDRREQ (-10039)
 
//#define EDESTADDRREQ (-10039)
//#define EMSGSIZE (-10040)
//#define EPROTOTYPE (-10041)
//#define ENOPROTOOPT (-10042)
77,7 → 71,6
/** Socket type is not supported.
*/
#define ESOCKTNOSUPPORT (-10044)
 
//#define EOPNOTSUPP (-10045)
 
/** Protocol family is not supported.
91,7 → 84,6
/** Address is already in use.
*/
#define EADDRINUSE (-10048)
 
//#define EADDRNOTAVAIL (-10049)
/* May be reported at any time if the implementation detects an underlying failure.
*/
106,7 → 98,6
/** The socket is not connected or bound.
*/
#define ENOTCONN (-10057)
 
//#define ESHUTDOWN (-10058)
//#define ETOOMANYREFS (-10059)
//#define ETIMEDOUT (-10060)
/branches/network/uspace/srv/net/socket/socket_client.c
340,7 → 340,6
if( ! new_socket ){
ERROR_CODE = ENOMEM;
}else{
bzero( socket, sizeof( * socket ));
socket_initialize( new_socket, SOCKET_GET_SOCKET_ID( call ), socket->phone, socket->service );
ERROR_CODE = sockets_add( socket_get_sockets(), new_socket->socket_id, new_socket );
if( ERROR_CODE < 0 ){
431,9 → 430,19
// create a new socket structure
socket = ( socket_ref ) malloc( sizeof( socket_t ));
if( ! socket ) return ENOMEM;
bzero( socket, sizeof( * socket ));
if( ERROR_OCCURRED( dyn_fifo_initialize( & socket->received, SOCKET_INITIAL_RECEIVED_SIZE ))){
free( socket );
return ERROR_CODE;
}
if( ERROR_OCCURRED( dyn_fifo_initialize( & socket->accepted, SOCKET_INITIAL_ACCEPTED_SIZE ))){
dyn_fifo_destroy( & socket->received );
free( socket );
return ERROR_CODE;
}
// request a new socket
if( ERROR_OCCURRED(( int ) async_req_3_3( phone, NET_SOCKET, 0, 0, service, ( ipcarg_t * ) & socket_id, ( ipcarg_t * ) & socket->data_fragment_size, ( ipcarg_t * ) & socket->header_size ))){
dyn_fifo_destroy( & socket->received );
dyn_fifo_destroy( & socket->accepted );
free( socket );
return ERROR_CODE;
}
540,8 → 549,6
}
 
int connect( int socket_id, const struct sockaddr * serv_addr, socklen_t addrlen ){
if( ! serv_addr ) return EDESTADDRREQ;
if( ! addrlen ) return EDESTADDRREQ;
// send the address
return socket_send_data( socket_id, NET_SOCKET_CONNECT, 0, serv_addr, addrlen );
}
587,8 → 594,8
}
 
int sendto( int socket_id, const void * data, size_t datalength, int flags, const struct sockaddr * toaddr, socklen_t addrlen ){
if( ! toaddr ) return EDESTADDRREQ;
if( ! addrlen ) return EDESTADDRREQ;
if( ! toaddr ) return EBADMEM;
if( ! addrlen ) return NO_DATA;
// with the address
return sendto_core( NET_SOCKET_SENDTO, socket_id, data, datalength, flags, toaddr, addrlen );
}