Skip to main content

Jabsimul with SASL Integration is a benchmarking tool for Jabber/XMPP Servers which have SASL authentication

jabsimul-with-sasl
===========

Jabsimul with SASL Integration is a benchmarking tool for Jabber/XMPP Servers which have SASL authentication.
It also has the support for *starttls*.

Special Note:
---------------------

The SASL and starttls implementation is mine. Other than this project is not mine.

Implementation:
-------------------------

I have implemented the protocol named XEP-0034: SASL Integration.

Extra Feature:
-----------------------

Other then jabsimul benchmark feature it has the extra feature of XMPP SASL authentication. I have enabled the SASL plain mechanism of authentication for xmpp login.

With that now you can have the benchmark of jabsimul with SASL authentication.


As list:

1. Implemented “XMPP TLS” from http://xmpp.org/rfcs/rfc3920.html
2. Implemented “SASL AUTH” from  http://xmpp.org/rfcs/rfc3920.html

Source code is available in here .


Procedure:
-----------------

First start a TCP connection to the XMPP server. Then convert this TCP connection to TLS with *starttls* schema request.
Then select the *SASL* auth mechanism and start the the XMPP communication with TLS. The TLS connection holds when the SASL mechanism complete a successful handshake.


1. Protocol Messaging Details with sequence -


Client:
----------

<stream:stream to="intel.com" xmlns="jabber:client" xmlns:stream="http://etherx.jabber.org/streams">

Server:
------------

<stream:stream xmlns:stream='http://etherx.jabber.org/streams' xmlns='jabber:client' id='ojTsAaoSvVKdKfmW' from='intel.com'  version='1.0'>
<stream:features>
  <starttls xmlns="urn:ietf:params:xml:ns:xmpp-tls"><required/></starttls>
  <mechanisms xmlns="urn:ietf:params:xml:ns:xmpp-sasl">
    <mechanism>PLAIN</mechanism><mechanism>X-OAUTH2</mechanism>
  </mechanisms>
 
</stream:features>

Client:
-------
<starttls xmlns='urn:ietf:params:xml:ns:xmpp-tls'/>



Server:
-------
<proceed xmlns='urn:ietf:params:xml:ns:xmpp-tls'/>

Implementation details are available [here](https://developers.google.com/cloud-print/docs/rawxmpp)

How To's:
--------

cd jabsimul/jab_simul/
vi jab_simul.xml


Change *<server>jabber.localhost</server>* to your XMPP server address. Fill the xml file with you necessary configuration.

Compile it:

./configure
make

Now you can execute it:

./jab_simul

Comments

Popular posts from this blog

UDP server client in c

Server #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <arpa/inet.h> #include <stdio.h> #include <unistd.h> #include <errno.h> #include <string.h> #include <stdlib.h> int main() {         int sock;         int addr_len, bytes_read;         char recv_data[1024],send_data[1024];         struct sockaddr_in server_addr , client_addr;         if ((sock = socket(AF_INET, SOCK_DGRAM, 0)) == -1) {             perror("Socket");             exit(1);         }         server_addr.sin_family = AF_INET;         server_addr.sin...

My favourite writer Humayun Ahmed

There is none who can replace him.At least the standard which he create in is life time in the running literature it never be replaceable.The new generation which is all the time busy in playing PC games,chatting ,bands etc. only his writing makes them to take a glance on the literature.For example Himu and Misir ali all the time keep them on track by anti-logic and logic.They also have show-down on the novel.I myself read all of the books of Himu and Misir ali and wait for the new one to come every year.Now I have to wait for life time. Except books he makes our dirty film industry pure by his heart warming ,well versed film.Following him many new producer try to make well and good film (not the dirty one) .He also contribute our drama by his dashing drama's. In writing except romance ,logic ,anti-logic ,he also write many science fiction.His brother Sir Dr. Md. Zafar Iqbal is the man who started science fiction in bangla. The list of books: Selected novels • Lilaboti (2...

[ASTERIK] configure: error: *** uuid support not found (this typically means the uuid development package is missing)

ISSUE: Build error on Asterik , when you want test webrtc feature :) checking for uuid_generate_random in -luuid... no checking for uuid_generate_random in -le2fs-uuid... no checking for uuid_generate_random... no configure: error: *** uuid support not found (this typically means the uuid development package is missing) Fix: This issue arises due to missing of UUID generator specified by rfc4122 . +Linux sudo apt-get install uuid-dev  @Unix yum -y install libuuid-devel Asterik comes with lots of helpful script available on - asterisk/contrib/scripts/ folder of your ASTERIK source. So just use the following command on UNIX console to run the asterik pre-requisite script. contrib/scripts/install_prereq install And you are done! configuring. Now -- Make Asterik.