Welcome Guest ( Log In | Register )

> Access AMIP socket server from *nix
uplate
post Oct 10 2007, 02:03 AM
Post #1


Member
**

Group: Members
Posts: 21
Joined: 10-October 07
Member No.: 391



Hi, I am interested in trying to access AMIP from *nix. It appears that AMIP server creates a TCP socket connection that should be able to be accessed remotely. Can you give some indication on how this could be done?

I've tried with socket and telnet, but both indicate that the AMIP hosting machine refuses the connection.

My setup:

[WIN]
AMIP Server:40581

[NIX]
Client access:
`telnet WIN 40581`
`socket WIN 40581`

Thanks
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
 
Reply to this topicStart new topic
Replies
uplate
post Nov 4 2007, 05:24 PM
Post #2


Member
**

Group: Members
Posts: 21
Joined: 10-October 07
Member No.: 391



Implemented ClientService mechanism as an irssi plugin. BOOST_THREADS don't seem to play nicely in irssi, I get failure to allocate thread resources. So I'm forced to use POSIX threads (pthreads), which, while probably not as safe, is definitely doable since I'm only using a single thread for the service. I basically copied your GenericServer word for word, replacing the windows thread stuff with unix thread stuff. I think I basically have it down, although I don't really understand a few things.

(1) Mutexes. No idea what these are, I'll have to read up.
(2) The mechanism through which a C++ member function is passed as a function pointer argument to a C function.

Regarding (2), I was pulling my hair out trying to figure out how to do this, when I decided to try it like you did. I figured your method wouldn't work on *nix, thinking it was MS specific, but it worked great. You are a genius sir tongue.gif.

Here are the salient features of my implementation.
CODE

extern "C" {
#include <pthread.h>
void *thread_start(void *);
}

template<typename InterfaceT, typename ImplementationT>
class NarcService {
public:
  NarcService() { ... }
  void start() { pthread_create( &serverThread, NULL, thread_start, this ); }
private:
  void joinServerThread() { pthread_join(serverThread,NULL); }
  virtual void run() { server->startInThisThread(boost::bind(
                                    &NarcService::joinServerThread,this)); }
  static void *thread_start( void *obj )
  { (static_cast<NarcService *>(obj))->run(); }
};



Attached thumbnail(s)
Attached Image
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

Posts in this topic
uplate   Access AMIP socket server from *nix   Oct 10 2007, 02:03 AM
Serge   AMIP uses specific protocol, application which con...   Oct 10 2007, 09:01 AM
uplate   ::phew::..finally got boost/asio/rcf compiled and ...   Oct 15 2007, 12:40 PM
uplate   OK, so I've tried writing a basic program to p...   Oct 15 2007, 11:39 PM
Serge   AMIP on Windows is not using ASIO for RCF, but the...   Oct 15 2007, 11:43 PM
uplate   Thank you for looking into this for me. I could he...   Oct 16 2007, 12:18 AM
Serge   Here is AMIP compiled with RCF 0.9: gen_irc.dll. R...   Oct 16 2007, 10:22 AM
uplate   IT WORKED! [uplate@~/devel/src/amip-clie...   Oct 16 2007, 11:53 PM
uplate   ive been working on an irssi module, and it's ...   Oct 20 2007, 02:20 AM
Serge   Looks nice, thanks for your efforts.   Oct 20 2007, 11:27 AM
uplate   Here's another picture. Looking at the IDL, I...   Oct 21 2007, 02:22 AM
Serge   Using listeners is a bit complicated and requires ...   Oct 21 2007, 11:35 AM
uplate   thanks for the information, and the source has bee...   Oct 24 2007, 01:51 AM
uplate   Hey again, so i'm a little stuck trying to i...   Nov 2 2007, 01:36 AM
uplate   Hey Serge, Ignore the last email, it was a probl...   Nov 3 2007, 02:56 AM
uplate   Was a bug in RCF, author gave me a fix. Now I have...   Nov 3 2007, 05:28 AM
uplate   Implemented ClientService mechanism as an irssi pl...   Nov 4 2007, 05:24 PM
uplate   Now have most of the major functionality of the AM...   Nov 27 2007, 03:06 AM
Serge   I don't mind, please feel free to release it.   Nov 27 2007, 08:12 AM
uplate   Is it OK if I include the gen_irc.dll *compiled wi...   Dec 22 2007, 05:46 PM
Serge   You'd better give a link, since AMIP should be...   Dec 22 2007, 07:34 PM
uplate   Good point, thanks.   Dec 22 2007, 07:49 PM
uplate   OK, first version is released. I won't use thi...   Dec 23 2007, 01:10 AM
uplate   Hey Serge, I noticed the link to the specially com...   Dec 31 2007, 09:42 PM
Serge   2.63 test is available at http://amip.tools-for.ne...   Jan 1 2008, 09:12 PM
uplate   Ah, nice, works great! Thanks, Max   Jan 1 2008, 11:49 PM


Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members: