www - seedlinux - Torrent indexing tool opensource torrents with share ratio's etc.
(HTM) git clone git://jay.scot/seedlinux
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) README
---
www (1576B)
---
1 #!/usr/bin/env node
2
3 /**
4 * Module dependencies.
5 */
6
7
8 var app = require('../app');
9 var debug = require('debug');
10 var http = require('http');
11
12 /**
13 * Get port from environment and store in Express.
14 */
15
16 var port = normalizePort(process.env.PORT || '3000');
17 app.set('port', port);
18
19 /**
20 * Create HTTP server.
21 */
22
23 var server = http.createServer(app);
24
25 /**
26 * Listen on provided port, on all network interfaces.
27 */
28
29 server.listen(port);
30 server.on('error', onError);
31 server.on('listening', onListening);
32
33 /**
34 * Normalize a port into a number, string, or false.
35 */
36
37 function normalizePort(val) {
38 var port = parseInt(val, 10);
39
40 if (isNaN(port)) {
41 // named pipe
42 return val;
43 }
44
45 if (port >= 0) {
46 // port number
47 return port;
48 }
49
50 return false;
51 }
52
53 /**
54 * Event listener for HTTP server "error" event.
55 */
56
57 function onError(error) {
58 if (error.syscall !== 'listen') {
59 throw error;
60 }
61
62 var bind = typeof port === 'string'
63 ? 'Pipe ' + port
64 : 'Port ' + port;
65
66 // handle specific listen errors with friendly messages
67 switch (error.code) {
68 case 'EACCES':
69 console.error(bind + ' requires elevated privileges');
70 process.exit(1);
71 break;
72 case 'EADDRINUSE':
73 console.error(bind + ' is already in use');
74 process.exit(1);
75 break;
76 default:
77 throw error;
78 }
79 }
80
81 /**
82 * Event listener for HTTP server "listening" event.
83 */
84
85 function onListening() {
86 var addr = server.address();
87 var bind = typeof addr === 'string'
88 ? 'pipe ' + addr
89 : 'port ' + addr.port;
90 debug('Listening on ' + bind);
91 }