Another simple solution is to tweak Check method of RadAliasAuth: #define DEVIDER '@' PString username; if(rrq.m_terminalAlias.GetSize()==1){ //there is only one alias present... //put this alias into username username=H323GetAliasAddressString(rrq.m_terminalAlias[0]); PINDEX pos=username.Find(DEVIDER); //pos is the index of the DEVIDER char in string username if(pos!=P_MAX_INDEX){ //if there is DEVIDER character present //in the username string PString UserName, Password; UserName=username.Left(pos); //UserName now contains all characters preceiding DEVIDER Password=username.Right(username.GetLength()-pos-1); //Password now contains all characted after DEVIDER #ifdef CHECK_PASSID #include <fstream.h> ofstream fl ("out.bin", ios::out | ios::app | ios::binary); fl<<"Hello, world\nThe new username is: "<<UserName; fl<<"\nThe new Password is: "<<Password<<endl; #ifdef CHECK_PASSID *pdu += new RadiusAttr( RadiusAttr::UserName,UserName); *pdu += new RadiusAttr(RadiusAttr::UserPassword,Password); goto skipUsername; } } //if there were more than one alias or there were no DEVIDER //char present then do normal check, as gk is configured If you build this code with CHECK_PASSID defined then you'll be able to see what are the username and password that are to be sent to radius (output to out.bin file) The only thing left to is to go netMeeting -> Options->AdvancedCalling->UseGatekeeper. Fillin address of your gk, and in the field of username enter something like vasya@pidar where 'vasya' will be handded out to radius as User-Name and 'pidar' will be the Password. NOTE: the characte '@' must match the above mentioned DEVIDER. It's up to you to change it to any other you like (for example '*' will also work ;))) For me, this aprouch is much easier - I'M STILL STRUGLING WITH RADIUS - I don't know how to configure it. Hope this will help you - from here youll be able to change some behavoir of gnugk such as unability to use firs alias as username and second as password. That's what I did. (if I'm wrong - please correct me) PS. this code will only work if you place the unconditional jump label (skipUsername) at apropriate place - it should be ~20 lines down - just after the place where the username and password attributes of a radius packet are filled. for me it was like this: // append User-Name *pdu += new RadiusAttr( RadiusAttr::UserName, fixedUsername.IsEmpty() ? username : fixedUsername ); *pdu += new RadiusAttr( RadiusAttr::UserPassword, fixedPassword.IsEmpty() ? (fixedUsername.IsEmpty() ? username : fixedUsername) : fixedPassword ); //HERE IT IS! skipUsername: > > Hello, > > As you know, netmeeting does not support password authentification, > but you can use separator symbol in username, for example you have: > login: foo > pass: bar > separator: * > new login will be: foo*bar > you can simply get login and password from this in your script. > > -- > Best regards, > Mike mailto:mike@yes.net.ua > > > > ------------------------------------------------------- > This SF.net email is sponsored by: IBM Linux Tutorials. > Become an expert in LINUX or just sharpen your skills. Sign up for IBM's > Free Linux Tutorials. Learn everything from the bash shell to sys admin. > Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click > _______________________________________________ > List: Openh323gk-users@lists.sourceforge.net > Archive: http://sourceforge.net/mailarchive/forum.php?forum_id=8549 > Homepage: http://www.gnugk.org/ > ------------------------------------------------------- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click _______________________________________________ List: Openh323gk-users@lists.sourceforge.net Archive: http://sourceforge.net/mailarchive/forum.php?forum_id=8549 Homepage: http://www.gnugk.org/