annotate stream/stream_netstream.h @ 35494:9cc5a5de6aa1

Cosmetic: Choose better variable name.
author ib
date Tue, 04 Dec 2012 18:39:09 +0000
parents b2329beb7406
children f8f6da5f5c57
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
27745
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
1 /*
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
2 * Common stuff for netstream
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
3 * Packets and so on are defined here along with a few helpers
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
4 * wich are used by both the client and the server
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
5 *
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
6 * Data is always low endian
30426
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
7 *
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
8 * This file is part of MPlayer.
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
9 *
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
10 * MPlayer is free software; you can redistribute it and/or modify
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
11 * it under the terms of the GNU General Public License as published by
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
12 * the Free Software Foundation; either version 2 of the License, or
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
13 * (at your option) any later version.
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
14 *
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
15 * MPlayer is distributed in the hope that it will be useful,
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
18 * GNU General Public License for more details.
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
19 *
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
20 * You should have received a copy of the GNU General Public License along
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
21 * with MPlayer; if not, write to the Free Software Foundation, Inc.,
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
22 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
27745
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
23 */
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
24
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
25 #ifndef MPLAYER_NETSTREAM_H
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
26 #define MPLAYER_NETSTREAM_H
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
27
30165
b4cbeff5153e Add a few missing header #includes and #defines.
diego
parents: 29263
diff changeset
28 #include "config.h"
27745
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
29 #include <stdint.h>
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
30 #include <stdlib.h>
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
31 #include <string.h>
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
32 #include <errno.h>
28402
c884d17bd005 Convert HAVE_WINSOCK2_H into a 0/1 definition.
diego
parents: 27745
diff changeset
33 #if !HAVE_WINSOCK2_H
27745
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
34 #include <sys/socket.h>
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
35 #endif
31892
b2329beb7406 Add #includes for headers necessary to pass 'make checkheaders'.
diego
parents: 31500
diff changeset
36
27745
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
37 #include "mp_msg.h"
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
38 #include "mpbswap.h"
31892
b2329beb7406 Add #includes for headers necessary to pass 'make checkheaders'.
diego
parents: 31500
diff changeset
39 #include "network.h"
27745
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
40
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
41 typedef struct mp_net_stream_packet_st {
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
42 uint16_t len;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
43 uint8_t cmd;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
44 char data[0];
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
45 } __attribute__ ((packed)) mp_net_stream_packet_t;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
46
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
47 #define PACKET_MAX_SIZE 4096
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
48
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
49 // Commands sent by the client
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
50 #define NET_STREAM_OPEN 0
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
51 // data is the url
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
52 #define NET_STREAM_FILL_BUFFER 1
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
53 // data is an uint16 wich is the max len of the data to return
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
54 #define NET_STREAM_SEEK 3
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
55 // data is an uint64 wich the pos where to seek
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
56 #define NET_STREAM_CLOSE 4
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
57 // no data
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
58 #define NET_STREAM_RESET 5
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
59 // no data
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
60
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
61 // Server response
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
62 #define NET_STREAM_OK 128
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
63 // Data returned if open is successful
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
64 typedef struct mp_net_stream_opened_st {
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
65 uint32_t file_format;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
66 uint32_t flags;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
67 uint32_t sector_size;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
68 uint64_t start_pos;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
69 uint64_t end_pos;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
70 } __attribute__ ((packed)) mp_net_stream_opened_t;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
71 // FILL_BUFFER return the data
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
72 // CLOSE return nothing
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
73 #define NET_STREAM_ERROR 129
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
74 // Data is the error message (if any ;)
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
75
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
76 static int net_read(int fd, char* buf, int len) {
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
77 int r = 0;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
78 while(len) {
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
79 r = recv(fd,buf,len,0);
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
80 if(r <= 0) {
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
81 if(errno == EINTR) continue;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
82 if(r < 0)
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
83 mp_msg(MSGT_NETST,MSGL_ERR,"Read failed: %s\n",strerror(errno));
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
84 return 0;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
85 }
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
86 len -= r;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
87 buf += r;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
88 }
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
89 return 1;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
90 }
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
91
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
92 static mp_net_stream_packet_t* read_packet(int fd) {
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
93 uint16_t len;
30702
9fc9d1e788aa Do not cast the results of malloc/calloc/realloc.
diego
parents: 30426
diff changeset
94 mp_net_stream_packet_t* pack = malloc(sizeof(mp_net_stream_packet_t));
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28402
diff changeset
95
27745
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
96 if(!net_read(fd,(char*)pack,sizeof(mp_net_stream_packet_t))) {
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
97 free(pack);
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
98 return NULL;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
99 }
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
100 pack->len = le2me_16(pack->len);
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
101
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
102 if(pack->len < sizeof(mp_net_stream_packet_t)) {
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
103 mp_msg(MSGT_NETST,MSGL_WARN,"Got invalid packet (too small: %d)\n",pack->len);
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
104 free(pack);
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
105 return NULL;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
106 }
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
107 if(pack->len > PACKET_MAX_SIZE) {
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
108 mp_msg(MSGT_NETST,MSGL_WARN,"Got invalid packet (too big: %d)\n",pack->len);
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
109 free(pack);
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
110 return NULL;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
111 }
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
112 len = pack->len;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
113 if(len > sizeof(mp_net_stream_packet_t)) {
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
114 pack = realloc(pack,len);
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
115 if(!pack) {
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
116 mp_msg(MSGT_NETST,MSGL_ERR,"Failed to get memory for the packet (%d bytes)\n",len);
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
117 return NULL;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
118 }
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
119 if(!net_read(fd,pack->data,len - sizeof(mp_net_stream_packet_t)))
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
120 return NULL;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
121 }
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
122 // printf ("Read packet %d %d %d\n",fd,pack->cmd,pack->len);
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
123 return pack;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
124 }
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
125
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
126 static int net_write(int fd, char* buf, int len) {
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
127 int w;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
128 while(len) {
31500
b01f807eb183 Use MSG_NOSIGNAL flag if available for send().
reimar
parents: 30702
diff changeset
129 w = send(fd,buf,len,DEFAULT_SEND_FLAGS);
27745
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
130 if(w <= 0) {
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
131 if(errno == EINTR) continue;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
132 if(w < 0)
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
133 mp_msg(MSGT_NETST,MSGL_ERR,"Write failed: %s\n",strerror(errno));
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
134 return 0;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
135 }
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
136 len -= w;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
137 buf += w;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
138 }
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
139 return 1;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
140 }
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
141
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
142 static int write_packet(int fd, uint8_t cmd,char* data,int len) {
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
143 mp_net_stream_packet_t* pack = malloc(len + sizeof(mp_net_stream_packet_t));
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28402
diff changeset
144
27745
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
145 if(len > 0 && data)
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
146 memcpy(pack->data,data,len);
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
147 pack->len = len + sizeof(mp_net_stream_packet_t);
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
148 pack->cmd = cmd;
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28402
diff changeset
149
27745
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
150 // printf("Write packet %d %d (%p) %d\n",fd,cmd,data,len);
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
151 pack->len = le2me_16(pack->len);
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
152 if(net_write(fd,(char*)pack,pack->len)) {
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
153 free(pack);
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
154 return 1;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
155 }
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
156 free(pack);
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
157 return 0;
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
158 }
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
159
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
160 static void net_stream_opened_2_me(mp_net_stream_opened_t* o) {
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
161 o->file_format = le2me_32(o->file_format);
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
162 o->flags = le2me_32(o->flags);
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
163 o->sector_size = le2me_32(o->sector_size);
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
164 o->start_pos = le2me_64(o->start_pos);
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
165 o->end_pos = le2me_64(o->end_pos);
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
166 }
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
167
a5ed200519dc Rename stream/netstream.h to stream/stream_netstream.h; netstream.h to make it
diego
parents:
diff changeset
168 #endif /* MPLAYER_NETSTREAM_H */