+/* vim: set ts=4 sw=4 :
+ *
+ * Prueba de 'transmisor' tipo broadcast con socket++.
+ *
+ * Para compilar:
+ * g++ -lsocket++ -o udp_transmiter udp_transmiter.cpp
+ *
+ * Necesita paquetes libsocket++ y libsocket++-dev que se pueden bajar de
+ * http://members.aon.at/hstraub/linux/socket++/
+ *
+ * $Id$
+ *
+ */
+
+#include <socket++/sockinet.h>
+#include <iostream>
+#include <sstream>
+// FIXME - no portable.
+#include <unistd.h>
+
+using namespace std;
+
+int main(int argc, char* argv[]) {
+ // Necesita argumentos.
+ if (argc != 3) {
+ cerr << "Faltan argumentos: " << endl;
+ cerr << "\t" << argv[0] << " host port" << endl;
+ return 1;
+ }
+
+ // Obtengo host y puerto.
+ string host = argv[1];
+ unsigned port;
+ {
+ stringstream str(argv[2]);
+ str >> port;
+ }
+
+ osockinet os(sockbuf::sock_dgram);
+ os->connect(host.c_str(), port);
+ os->sendtimeout(5);
+
+ cout << "Transmitiendo a " << os->peerhost() << ':' << os->peerport()
+ << " desde " << os->localhost() << ':' << os->localport() << "."
+ << endl;
+
+ while (true) {
+ os << "Hola mundo!" << endl;
+ sleep(1);
+ }
+
+ return 0;
+}