Hello, Last two weeks, I was doing mainly server side work[4][5][6], but without server I could not test my work, I tried to create repro proxy server following steps from[1] but it was not working, some certificate issue was there. Work that I have done so far: Update all the files which has error codes in them to log error message instead of error code[2]. Found all the equivalent functions of libjingle api with sip api[3] (table). Support Client for tls sni extension and created a pull request[4]. Support Server for tls sni extension but without server I could not test it but will try to get any test server and test on it[5]. Modifiy old schema with proper columns name for PostgreSql repro database[6]. In this final week, I will work on the server and will try to support for server sni extension. [1]=https://www.resiprocate.org/Using_Repro [2]=https://github.com/udit043/resiprocate/commits/patch-5 [3]=https://wiki.debian.org/SummerOfCode2016/StudentApplications/UditRaikwar [4]=https://github.com/resiprocate/resiprocate/pull/54 [5]=https://github.com/udit043/resiprocate/commits/patch-3 [6]=https://github.com/udit043/resiprocate/commits/patch-4
Thanks, Udit On 2 August 2016 at 23:59, Udit Raikwar <[email protected]> wrote: > Hello, > In the previous week I was working on TLS SNI extension, I have > successfully fetched the server name from the domain name and created pull > request on this work[1]. > I have also done some work on the header file for converting error codes > into error string. I have updated Errdes.hxx[2] file and created one new > file Errdes.cxx[3] that has function definition inside it. Also configured > rutil/makefile.am[4] file for compiling and linking Errdes.cxx. > In this week I will work on enabling server support for TLS SNI extension. > [1]=https://github.com/resiprocate/resiprocate/pull/54 > [2]=https://github.com/udit043/resiprocate/blob/patch-2/rutil/Errdes.hxx > [3]=https://github.com/udit043/resiprocate/blob/patch-2/rutil/Errdes.cxx > [4]=https://github.com/udit043/resiprocate/commit/ > 17514985e0369ce8b46eb30e6a77b5abbc27d3fc#diff- > c8d6dff51be74f84d5492124f4794306 > -- > Thanks, > Udit Raikwar, > Jabalpur Engineering College. > +91-9009875316 > <https://github.com/udit043> > <http://stackoverflow.com/users/4499919/udit043> > <https://www.youtube.com/channel/UC8-VO5MVPJg7SMQFFvw6O_w> > <https://in.linkedin.com/in/udit-raikwar-251498ab> > <https://plus.google.com/+UditRaikwar> > > On 28 July 2016 at 01:03, Udit Raikwar <[email protected]> wrote: > >> Hello, >> In the previous week after modifying some codes[1] I have successfully >> tested my work of supporting TLS SNI extension in client side. I have >> checked the server name in 'client hello' using wireshark. Currently I am >> manually giving the server name but in this week I will try to fetch the >> server name from the domain name. >> Here are the screenshots: >> Client Hello without SNI supported: https://i.imgsafe.org/54bf8257b4.png >> Client Hello with SNI supported: https://i.imgsafe.org/54c253a037.png >> I have also modified the header file for converting error codes into >> error string[2], some more work are required in the header file which I >> will do in this week. >> [1]=https://github.com/udit043/resiprocate/commit/ >> 62325a3e805cdd7fbc567472f2a0c66333023090 >> [2]=https://github.com/udit043/resiprocate/blob/ >> 7a951c82397b0fb6c4a77bfe36af741632502c89/rutil/Errdes.hxx >> >> -- >> Thanks, >> Udit Raikwar >> >> >> On 19 July 2016 at 22:42, Udit Raikwar <[email protected]> wrote: >> >>> In the previous week I did some work on supporting TLS SNI extension for >>> client[1] and server[2] side. I have not tested it yet as it needs more >>> work to be done on it. Working on server side is little complicated and in >>> the coming week I will work on the same task and will try to refine it and >>> will test it using wireshark or openssl commands. >>> [1]: https://github.com/udit043/resiprocate/commit/ >>> d0edf8b640baeebea9c1c31ef2ccc45baf2d4915 >>> [2]: https://github.com/udit043/resiprocate/commit/ >>> 0811a9e29e95d0fd6676e7206cf2641bc8eee72b >>> >>> -- >>> Thanks, >>> Udit Raikwar, >>> Jabalpur Engineering College. >>> +91-9009875316 >>> <https://github.com/udit043> >>> <http://stackoverflow.com/users/4499919/udit043> >>> <https://www.youtube.com/channel/UC8-VO5MVPJg7SMQFFvw6O_w> >>> <https://in.linkedin.com/in/udit-raikwar-251498ab> >>> <https://plus.google.com/+UditRaikwar> >>> >>> On 13 July 2016 at 22:44, Udit Raikwar <[email protected]> wrote: >>> >>>> Hello, >>>> In the last week I was working on libjingle but integrating libjingle >>>> was a big task so therefore I paused it for a while and moved to the next >>>> task which involved supporting TLS SNI (Server Name Indication) for the >>>> client and server connection. I have started working on the task and will >>>> explain more in upcoming week. >>>> This week I will work on sslconnection and implement TLS SNI on both >>>> the side (client and server). >>>> >>>> On 5 July 2016 at 23:57, Udit Raikwar <[email protected]> wrote: >>>> >>>>> Hello, >>>>> Last week I was reading and finding the sipX api used in the project >>>>> and the equivalent libjingle api that can be used in the project. I have >>>>> made relation among the sipX api and libjingle and post it on my wiki >>>>> page ( >>>>> https://wiki.debian.org/SummerOfCode2016/StudentApplications/ >>>>> UditRaikwar). I am trying to implement libjingle in the project. >>>>> Libjingle builds a STUN server which implements the STUN protocol for >>>>> simple traversal of UDP over NAT. In the coming week I will work on >>>>> integrating libjingle with the reflow. >>>>> >>>>> >>>>> On 28 June 2016 at 12:50, Udit Raikwar <[email protected]> wrote: >>>>> >>>>>> Hello, >>>>>> >>>>>> The bug: https://project.freertc.org/issues/28 which I have to solve >>>>>> depends on one other bug: https://project.freertc.org/issues/27 . My >>>>>> task is to enable webRTC client support which includes the conference >>>>>> call >>>>>> feature and for implementing this I need to introduce libjingle in >>>>>> resiprocate project. >>>>>> >>>>>> Currently the resiprocate uses sipX API for connection. This api >>>>>> lacks in providing many codecs and protocols for the webrtc >>>>>> interoperability. More information about this is given here: >>>>>> https://www.resiprocate.org/bugzilla/show_bug.cgi?id=93. >>>>>> >>>>>> Downloading libjingle source code was not easy because libjingle has >>>>>> been moved from stand alone project and merged to the webrtc. On >>>>>> googling I >>>>>> got some libjingle version from http://www.antepedia.com/ >>>>>> detail/p/libjingle.html. >>>>>> >>>>>> I have downloaded two versions 0.4.0 and 0.6.14 and tried to compile >>>>>> them. On compiling both the version I got too many errors, many files >>>>>> didn't include the header file and many files contains c++11 features. To >>>>>> compile the c++11 features I need to pass the flag 'std=c++11' to the >>>>>> compiler. Also third party application scons(www.scons.org) was used >>>>>> for compiling and making the object and executable file of the libjingle. >>>>>> Linking library in scons was time taking task. >>>>>> >>>>>> After modifying more than 20 files, I successfully compiled both the >>>>>> versions and both are ready to use. I have uploaded all the files to >>>>>> github: >>>>>> >>>>>> libjingle version 0.4.0: https://github.com/udit043/libjingle-0.4.0 >>>>>> >>>>>> libjingle version 0.6.14: https://github.com/udit043/libjingle-0.6.14 >>>>>> >>>>>> I have to implement the libjingle in the branch >>>>>> 'b-counterpath-recon-20130424': https://github.com/ >>>>>> resiprocate/resiprocate/tree/b-counterpath-recon-20130424 >>>>>> >>>>>> I have created one branch 'udit-webrtc': https://github.com/udit043/ >>>>>> resiprocate/tree/udit-webrtc >>>>>> >>>>>> This branch was created with branch 'b-counterpath-recon-20130424' >>>>>> and then merged with the master. But on merging there were some Merge >>>>>> Conflicts mainly inside the 'reflow' directory. >>>>>> >>>>>> In next week I will try to solve merge conflicts and integrate >>>>>> libjingle with resiprocate. >>>>>> >>>>>> On 20 June 2016 at 17:46, Udit Raikwar <[email protected]> wrote: >>>>>> >>>>>>> Hello, >>>>>>> >>>>>>> Last week I had updated all the files inside resiprocate project, >>>>>>> there were 32 files that needed to be updated. Also I had created a Pull >>>>>>> Request <https://github.com/resiprocate/resiprocate/pull/47>: 32 >>>>>>> files updated, 1 file created and configure.ac >>>>>>> <https://github.com/udit043/resiprocate/commit/097a30890d6dfb81cab790e992748d44ea1e6bf5#diff-67e997bcfdac55191033d57a16d1408a> >>>>>>> file updated for successful build >>>>>>> <https://travis-ci.org/resiprocate/resiprocate/builds/138290837> in >>>>>>> Travis-CI, For quick view of all the files that I have updated please >>>>>>> visit <http://paste.debian.net/hidden/11d413da/>. >>>>>>> >>>>>>> During fourth week I have updated >>>>>>> <https://github.com/resiprocate/resiprocate/pull/47/commits/9c59340c0ac853ec074b923f82299717b94fe6ce> >>>>>>> Errdes.hxx >>>>>>> header file for printing the error message with the error number. >>>>>>> E.g. If error number is 22 then log error message will be, >>>>>>> “socket error EINVAL (Invalid argument) 22” >>>>>>> If error number is negative or unknown error occur then log message >>>>>>> will be, >>>>>>> “socket error Unknown error errno” (e.g. “socket error Unknown error >>>>>>> -48”) >>>>>>> >>>>>>> I have also made documentation of the bug that I have solved. I have >>>>>>> started working on next bug <https://project.freertc.org/issues/28> >>>>>>> which I have to solve. >>>>>>> >>>>>>> On 14 June 2016 at 12:28, Udit Raikwar <[email protected]> wrote: >>>>>>> >>>>>>>> During third week I have updated all the files inside resiprocate >>>>>>>> project that contains numeric error codes, there were 32 files >>>>>>>> that needed to be updated, 32 files which I have updated are as follow: >>>>>>>> >>>>>>>> -> *resiprocate/resip/stack * >>>>>>>> - ConnectionManager.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/ConnectionManager.cxx> >>>>>>>> - DateCategory.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/DateCategory.cxx> >>>>>>>> - GenericPidfContents.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/GenericPidfContents.cxx> >>>>>>>> - InternalTransport.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/InternalTransport.cxx> >>>>>>>> - TcpBaseTransport.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/TcpBaseTransport.cxx> >>>>>>>> - TcpConnection.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/TcpConnection.cxx> >>>>>>>> - TransportSelector.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/TransportSelector.cxx> >>>>>>>> -> *resiprocate/resip/stack/test* >>>>>>>> - dumpTls.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/test/dumpTls.cxx> >>>>>>>> - Resolver.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/test/Resolver.cxx> >>>>>>>> - testSipStackInvite.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/test/testSipStackInvite.cxx> >>>>>>>> - Transceiver >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/test/Transceiver.cxx> >>>>>>>> *->* *resiprocate/resip/stack/ssl* >>>>>>>> - DtlsTransport.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/ssl/DtlsTransport.cxx> >>>>>>>> - Security.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/ssl/Security.cxx> >>>>>>>> - TlsConnection.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/ssl/TlsConnection.cxx> >>>>>>>> * ->* *resiprocate/resip/recon/MOHParkServer* >>>>>>>> - HttpBase.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/recon/MOHParkServer/HttpBase.cxx> >>>>>>>> *->* *resiprocate/rutil* >>>>>>>> - FdPoll.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/rutil/FdPoll.cxx> >>>>>>>> - FileSystem.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/rutil/FileSystem.cxx> >>>>>>>> - DnsUtil.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/rutil/DnsUtil.cxx> >>>>>>>> >>>>>>>> - ServerProcess.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/rutil/ServerProcess.cxx> >>>>>>>> - Socket.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/rutil/Socket.cxx> >>>>>>>> * -> resiprocate/tfm* >>>>>>>> - Resolver.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/tfm/Resolver.cxx> >>>>>>>> - TestRtp.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/tfm/TestRtp.cxx> >>>>>>>> >>>>>>>> -*> resiprocate/repro* >>>>>>>> - HttpBase.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/repro/HttpBase.cxx> >>>>>>>> - HttpConnection.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/repro/HttpConnection.cxx> >>>>>>>> - RegSyncClient.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/repro/RegSyncClient.cxx> >>>>>>>> >>>>>>>> - XmlRpcConnection.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/repro/XmlRpcConnection.cxx> >>>>>>>> - XmlRpcServerBase.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/repro/XmlRpcServerBase.cxx> >>>>>>>> * -> resiprocate/apps/clicktocall* >>>>>>>> - HttpBase.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/apps/clicktocall/HttpBase.cxx> >>>>>>>> - HttpConnection.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/apps/clicktocall/HttpConnection.cxx> >>>>>>>> - XmlRpcConnection.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/apps/clicktocall/XmlRpcConnection.cxx> >>>>>>>> - XmlRpcServerBase.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/apps/clicktocall/XmlRpcServerBase.cxx> >>>>>>>> * -> resiprocate/apps/ichat-gw * >>>>>>>> - MediaRelay.cxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/apps/ichat-gw/MediaRelay.cxx> >>>>>>>> >>>>>>>> One new header file created in directory: >>>>>>>> * -> **resiprocate/rutil* >>>>>>>> - Errdes.hxx >>>>>>>> <https://github.com/udit043/resiprocate/blob/master/rutil/Errdes.hxx> >>>>>>>> >>>>>>>> - Created Pull Request >>>>>>>> <https://github.com/resiprocate/resiprocate/pull/47>: >>>>>>>> 32 files updated, 1 file created and configure.ac >>>>>>>> <https://github.com/udit043/resiprocate/commit/097a30890d6dfb81cab790e992748d44ea1e6bf5#diff-67e997bcfdac55191033d57a16d1408a> >>>>>>>> file >>>>>>>> updated for successful build >>>>>>>> <https://travis-ci.org/resiprocate/resiprocate/builds/137097245>in >>>>>>>> Travis-Ci. >>>>>>>> >>>>>>>> On 7 June 2016 at 00:56, Udit Raikwar <[email protected]> wrote: >>>>>>>> >>>>>>>>> Hello, >>>>>>>>> I have done following things in past two weeks : >>>>>>>>> >>>>>>>>> Week 1: >>>>>>>>> - Successfully installed and configured resiprocate. >>>>>>>>> - Read codes and discuss with mentor about the format of logging >>>>>>>>> message. >>>>>>>>> - Define new functions for converting error codes into string. >>>>>>>>> - (eg “*socket error 22*” into “*socket error EINVAL (Invalid >>>>>>>>> argument)*”) >>>>>>>>> - Create header file 'Errdes.hxx >>>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/ssl/Errdes.hxx>' >>>>>>>>> and cxx file 'Errdes.cxx >>>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/ssl/Errdes.cxx>' >>>>>>>>> for performing this task. >>>>>>>>> - Successfully test it on TlsConnection.cxx >>>>>>>>> <https://github.com/udit043/resiprocate/commit/6b51be06b00cd5c4118cf3c0c4c12bc0a8bb5910> >>>>>>>>> file >>>>>>>>> >>>>>>>>> Week 2: >>>>>>>>> - Update header file with new functions. >>>>>>>>> - Update files inside >>>>>>>>> -> Resip/Stack >>>>>>>>> - ConnectionManager.cxx >>>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/ConnectionManager.cxx> >>>>>>>>> - DateCategory.cxx >>>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/DateCategory.cxx> >>>>>>>>> - GenericPidfContents.cxx >>>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/GenericPidfContents.cxx> >>>>>>>>> - InternalTransport.cxx >>>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/InternalTransport.cxx> >>>>>>>>> - TcpBaseTransport.cxx >>>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/TcpBaseTransport.cxx> >>>>>>>>> - TcpConnection.cxx >>>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/TcpConnection.cxx> >>>>>>>>> - TransportSelector.cxx >>>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/TransportSelector.cxx> >>>>>>>>> -> Resip/Stack/Test >>>>>>>>> - dumpTls.cxx >>>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/test/dumpTls.cxx> >>>>>>>>> - Resolver.cxx >>>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/test/Resolver.cxx> >>>>>>>>> - testSipStackInvite.cxx >>>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/test/testSipStackInvite.cxx> >>>>>>>>> - Transceiver >>>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/test/Transceiver.cxx> >>>>>>>>> -> Resip/Stack/SSL >>>>>>>>> - DtlsTransport.cxx >>>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/ssl/DtlsTransport.cxx> >>>>>>>>> - Security.cxx >>>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/ssl/Security.cxx> >>>>>>>>> - TlsConnection.cxx >>>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/stack/ssl/TlsConnection.cxx> >>>>>>>>> -> Resip/Stack/Recon >>>>>>>>> - HttpBase.cxx >>>>>>>>> <https://github.com/udit043/resiprocate/blob/master/resip/recon/MOHParkServer/HttpBase.cxx> >>>>>>>>> - Created Pull Request >>>>>>>>> <https://github.com/resiprocate/resiprocate/pull/44> >>>>>>>>> >>>>>>>>> In the next week i will update all other files inside resiprocate >>>>>>>>> project and commit it to the repository and update the pull request. >>>>>>>>> -- >>>>>>>>> Regards >>>>>>>>> Udit Raikwar, >>>>>>>>> Jabalpur Engineering College. >>>>>>>>> +91-9009875316 >>>>>>>>> <https://github.com/udit043> >>>>>>>>> <http://stackoverflow.com/users/4499919/udit043> >>>>>>>>> <https://www.youtube.com/channel/UC8-VO5MVPJg7SMQFFvw6O_w> >>>>>>>>> <https://in.linkedin.com/in/udit-raikwar-251498ab> >>>>>>>>> <https://plus.google.com/+UditRaikwar> >>>>>>>>> <https://www.facebook.com/udit.tutu> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> Thanks, >>>>>>>> Udit Raikwar, >>>>>>>> Jabalpur Engineering College. >>>>>>>> +91-9009875316 >>>>>>>> <https://github.com/udit043> >>>>>>>> <http://stackoverflow.com/users/4499919/udit043> >>>>>>>> <https://www.youtube.com/channel/UC8-VO5MVPJg7SMQFFvw6O_w> >>>>>>>> <https://in.linkedin.com/in/udit-raikwar-251498ab> >>>>>>>> <https://plus.google.com/+UditRaikwar> >>>>>>>> <https://www.facebook.com/udit.tutu> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Thanks, >>>>>>> Udit Raikwar, >>>>>>> Jabalpur Engineering College. >>>>>>> +91-9009875316 >>>>>>> <https://github.com/udit043> >>>>>>> <http://stackoverflow.com/users/4499919/udit043> >>>>>>> <https://www.youtube.com/channel/UC8-VO5MVPJg7SMQFFvw6O_w> >>>>>>> <https://in.linkedin.com/in/udit-raikwar-251498ab> >>>>>>> <https://plus.google.com/+UditRaikwar> >>>>>>> <https://www.facebook.com/udit.tutu> >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Thanks, >>>>>> Udit Raikwar, >>>>>> Jabalpur Engineering College. >>>>>> +91-9009875316 >>>>>> <https://github.com/udit043> >>>>>> <http://stackoverflow.com/users/4499919/udit043> >>>>>> <https://www.youtube.com/channel/UC8-VO5MVPJg7SMQFFvw6O_w> >>>>>> <https://in.linkedin.com/in/udit-raikwar-251498ab> >>>>>> <https://plus.google.com/+UditRaikwar> >>>>>> <https://www.facebook.com/udit.tutu> >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Thanks, >>>>> Udit Raikwar, >>>>> Jabalpur Engineering College. >>>>> +91-9009875316 >>>>> <https://github.com/udit043> >>>>> <http://stackoverflow.com/users/4499919/udit043> >>>>> <https://www.youtube.com/channel/UC8-VO5MVPJg7SMQFFvw6O_w> >>>>> <https://in.linkedin.com/in/udit-raikwar-251498ab> >>>>> <https://plus.google.com/+UditRaikwar> >>>>> <https://www.facebook.com/udit.tutu> >>>>> >>>> >>>> >>>> >>>> -- >>>> Thanks, >>>> Udit Raikwar, >>>> Jabalpur Engineering College. >>>> +91-9009875316 >>>> <https://github.com/udit043> >>>> <http://stackoverflow.com/users/4499919/udit043> >>>> <https://www.youtube.com/channel/UC8-VO5MVPJg7SMQFFvw6O_w> >>>> <https://in.linkedin.com/in/udit-raikwar-251498ab> >>>> <https://plus.google.com/+UditRaikwar> >>>> <https://www.facebook.com/udit.tutu> >>>> >>> >>> >> >
