Issue with Client Authenication Certificates within Bootable Media

Hi All,
I am in the process of deploying SCCM 2012 R2 in our environment parallel to our existing SCCM 2007 R3 environment. So far everything is working well. I have hit, however my first issue. This seems to be related to Client Authentication certificate validation.
The problem occurs when booting from SCCM 2012 Task Sequence Bootable media and attempting to contact a local Management Point. I am using a USB Boot key at this point as I do not want to overlap with our existing PXE environment.
The SMSTS.LOG shows the error 0x80072f8f. Specifically the error that I need to get past is:
[TSMESSAGING] AsyncCallback(): WINHTTP_CALLBACK_STATUS_SECURE_FAILURE Encountered TSMBootstrap 19/12/14 11:27:22 AM 1164 (0x048C)
[TSMESSAGING]                : dwStatusInformationLength is 4
 TSMBootstrap 19/12/14 11:27:22 AM 1164 (0x048C)
[TSMESSAGING]                : *lpvStatusInformation is 0x10
 TSMBootstrap 19/12/14 11:27:22 AM 1164 (0x048C)
[TSMESSAGING]            :
WINHTTP_CALLBACK_STATUS_FLAG_CERT_CN_INVALID is set
 TSMBootstrap 19/12/14 11:27:22 AM 1164 (0x048C)
[TSMESSAGING] AsyncCallback(): ----------------------------------------------------------------- TSMBootstrap 19/12/14 11:27:22 AM 1164 (0x048C)
I have followed all of the recommended steps that I can think of so far. I have:
Ensured that the Server Authentication and client authentication certificate on all Site systems is correct (I.e. all certificates are based on Certificate Templates as per the TechNet documentation)
Ensured the Root and Issuing CA's are registered within the SCCM 2012 Site
The Distribution Point role and Bootable Media are using a dedicated Client Authentication certificate that has been imported via a .PFX
Ensured this certificate is in a "Not blocked" state
Ensured the Date and Time of each Site System and of WinPE during the boot process is in sync.
Checked the MPControl.LOG on each of our 2 Management Points looking for errors. These logs are all clear.
Checked the IIS Web Logs on the Management Points. These logs are also all clear.
The SMSTS.LOG is successfully importing the Root CA certificates ....
Root CA Public Certs=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX TSMBootstrap 19/12/14 11:27:22 AM 1164 (0x048C)Importing certificates to root store TSMBootstrap 19/12/14 11:27:22 AM 1164 (0x048C)
Added certificate to store or replaced matching certificate in store. TSMBootstrap 19/12/14 11:27:22 AM 1164 (0x048C)
Added certificate to store or replaced matching certificate in store. TSMBootstrap 19/12/14 11:27:22 AM 1164 (0x048C)
I have noticed that there are plenty of issues related to an invalid CA due to root CA import issues or CRL checking. We currently have CRL checking disabled and based on the "INVALID_CN" reference I don't believe CRL check is part of the equation.
With regards to the Common Name I can confirm the following:
The "ConfigMgr Client Certificate" Template used to auto enroll all domain joined systems is based upon the "Workstation Authentication" template. The Subject Field is set, as by default to "None". The SAN is set to DNS name.
The "ConfigMgr OSD Certificate" Template used to create the client authentication certificate used on the DPs and Bootable Media is set to "Supplied at Request". I set a CN of "Configmgr OSD Certificate" for this certificate.
I have tried using another client authentication certificate for the DPs and Bootable media that had no Subject Name defined.
Can offer any suggestions as to where I might be going wrong?
Thanks,
Nathan Sutton
NSutton

Hi Jason,
Here is the log as requested. I will post it up in separate messages.
<![LOG[LOGGING: Finalize process ID set to 724]LOG]!><time="13:36:01.388+480" date="12-19-2014" component="TSBootShell" context="" type="1" thread="728" file="tslogging.cpp:1495">
<![LOG[==============================[ TSBootShell.exe ]==============================]LOG]!><time="13:36:01.388+480" date="12-19-2014" component="TSBootShell" context="" type="1" thread="728"
file="bootshell.cpp:1055">
<![LOG[Succeeded loading resource DLL 'X:\sms\bin\i386\1033\TSRES.DLL']LOG]!><time="13:36:01.404+480" date="12-19-2014" component="TSBootShell" context="" type="1" thread="728" file="util.cpp:964">
<![LOG[Debug shell is enabled]LOG]!><time="13:36:01.404+480" date="12-19-2014" component="TSBootShell" context="" type="1" thread="728" file="bootshell.cpp:1066">
<![LOG[Waiting for PNP initialization...]LOG]!><time="13:36:01.419+480" date="12-19-2014" component="TSBootShell" context="" type="1" thread="732" file="bootshell.cpp:60">
<![LOG[RAM Disk Boot Path: MULTI(0)DISK(0)RDISK(0)PARTITION(1)\SOURCES\BOOT.WIM]LOG]!><time="13:36:01.419+480" date="12-19-2014" component="TSBootShell" context="" type="1" thread="732"
file="configpath.cpp:302">
<![LOG[WinPE boot path: D:\SOURCES\BOOT.WIM]LOG]!><time="13:36:01.435+480" date="12-19-2014" component="TSBootShell" context="" type="1" thread="732" file="configpath.cpp:327">
<![LOG[Booted from removable device]LOG]!><time="13:36:01.435+480" date="12-19-2014" component="TSBootShell" context="" type="1" thread="732" file="configpath.cpp:357">
<![LOG[Found config path D:\]LOG]!><time="13:36:01.435+480" date="12-19-2014" component="TSBootShell" context="" type="1" thread="732" file="bootshell.cpp:548">
<![LOG[Booting from removable media, not restoring bootloaders on hard drive]LOG]!><time="13:36:01.435+480" date="12-19-2014" component="TSBootShell" context="" type="1" thread="732" file="bootshell.cpp:582">
<![LOG[D:\WinPE does not exist.]LOG]!><time="13:36:01.497+480" date="12-19-2014" component="TSBootShell" context="" type="1" thread="732" file="bootshell.cpp:599">
<![LOG[D:\_SmsTsWinPE\WinPE does not exist.]LOG]!><time="13:36:01.497+480" date="12-19-2014" component="TSBootShell" context="" type="1" thread="732" file="bootshell.cpp:613">
<![LOG[Executing command line: wpeinit.exe -winpe]LOG]!><time="13:36:01.497+480" date="12-19-2014" component="TSBootShell" context="" type="1" thread="732" file="bootshell.cpp:860">
<![LOG[Executing command line: X:\windows\system32\cmd.exe /k]LOG]!><time="13:36:02.935+480" date="12-19-2014" component="TSBootShell" context="" type="1" thread="728" file="bootshell.cpp:860">
<![LOG[The command completed successfully.]LOG]!><time="13:36:02.951+480" date="12-19-2014" component="TSBootShell" context="" type="1" thread="728" file="bootshell.cpp:942">
<![LOG[Successfully launched command shell.]LOG]!><time="13:36:02.951+480" date="12-19-2014" component="TSBootShell" context="" type="1" thread="728" file="bootshell.cpp:432">
<![LOG[The command completed successfully.]LOG]!><time="13:36:15.371+480" date="12-19-2014" component="TSBootShell" context="" type="1" thread="732" file="bootshell.cpp:942">
<![LOG[Starting DNS client service.]LOG]!><time="13:36:15.371+480" date="12-19-2014" component="TSBootShell" context="" type="1" thread="732" file="bootshell.cpp:666">
<![LOG[Executing command line: X:\sms\bin\i386\TsmBootstrap.exe /env:WinPE /configpath:D:\]LOG]!><time="13:36:15.890+480" date="12-19-2014" component="TSBootShell" context="" type="1" thread="732"
file="bootshell.cpp:860">
<![LOG[The command completed successfully.]LOG]!><time="13:36:15.890+480" date="12-19-2014" component="TSBootShell" context="" type="1" thread="732" file="bootshell.cpp:942">
<![LOG[==============================[ TSMBootStrap.exe ]==============================]LOG]!><time="13:36:16.062+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212"
file="tsmbootstrap.cpp:1165">
<![LOG[Command line: X:\sms\bin\i386\TsmBootstrap.exe /env:WinPE /configpath:D:\]LOG]!><time="13:36:16.062+480" date="12-19-2014" component="TSMBootstrap" context="" type="0" thread="1212"
file="tsmbootstrap.cpp:1166">
<![LOG[Succeeded loading resource DLL 'X:\sms\bin\i386\1033\TSRES.DLL']LOG]!><time="13:36:16.078+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="util.cpp:964">
<![LOG[Succeeded loading resource DLL 'X:\sms\bin\i386\TSRESNLC.DLL']LOG]!><time="13:36:16.078+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="resourceutils.cpp:169">
<![LOG[Current OS version is 6.2.9200.0]LOG]!><time="13:36:16.078+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="util.cpp:3094">
<![LOG[Adding SMS bin folder "X:\sms\bin\i386" to the system environment PATH]LOG]!><time="13:36:16.094+480" date="12-19-2014" component="TSMBootstrap" context="" type="0" thread="1212"
file="tsmbootstrap.cpp:963">
<![LOG[Failed to open PXE registry key. Not a PXE boot.]LOG]!><time="13:36:16.094+480" date="12-19-2014" component="TSMBootstrap" context="" type="0" thread="1212" file="tsmbootstrap.cpp:844">
<![LOG[Media Root = D:\]LOG]!><time="13:36:16.094+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmbootstrap.cpp:1000">
<![LOG[WinPE boot type: 'Ramdisk:SourceIdentified']LOG]!><time="13:36:16.094+480" date="12-19-2014" component="TSMBootstrap" context="" type="0" thread="1212" file="tsmbootstrap.cpp:779">
<![LOG[Failed to find the source drive where WinPE was booted from]LOG]!><time="13:36:16.094+480" date="12-19-2014" component="TSMBootstrap" context="" type="2" thread="1212" file="tsmbootstrap.cpp:1036">
<![LOG[Executing from Media in WinPE]LOG]!><time="13:36:16.094+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmbootstrap.cpp:1041">
<![LOG[Verifying Media Layout.]LOG]!><time="13:36:16.094+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:1623">
<![LOG[MediaType = BootMedia]LOG]!><time="13:36:16.094+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:2607">
<![LOG[PasswordRequired = false]LOG]!><time="13:36:16.094+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:2633">
<![LOG[Found network adapter "Realtek PCIe GBE Family Controller" with IP Address X.X161.12.]LOG]!><time="13:36:16.109+480" date="12-19-2014" component="TSMBootstrap" context="" type="0"
thread="1212" file="tsmbootstraputil.cpp:517">
<![LOG[Running Wizard in Unattended mode]LOG]!><time="13:36:16.109+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:2803">
<![LOG[Loading Media Variables from "D:\sms\data\variables.dat"]LOG]!><time="13:36:16.109+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsremovablemedia.cpp:322">
<![LOG[no password for vars file]LOG]!><time="13:36:16.156+480" date="12-19-2014" component="TSMBootstrap" context="" type="0" thread="1212" file="tsmediawizardcontrol.cpp:247">
<![LOG[Entering TSMediaWizardControl::GetPolicy.]LOG]!><time="13:36:16.156+480" date="12-19-2014" component="TSMBootstrap" context="" type="0" thread="1212" file="tsmediawizardcontrol.cpp:527">
<![LOG[Creating key 'Software\Microsoft\SMS\47006C006F00620061006C005C007B00350031004100300031003600420036002D0046003000440045002D0034003700350032002D0042003900370043002D003500340045003600460033003800360041003900310032007D00']LOG]!><time="13:36:16.172+480"
date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="environmentscope.cpp:263">
<![LOG[Environment scope successfully created: Global\{51A016B6-F0DE-4752-B97C-54E6F386A912}]LOG]!><time="13:36:16.172+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212"
file="environmentscope.cpp:623">
<![LOG[Creating key 'Software\Microsoft\SMS\47006C006F00620061006C005C007B00420041003300410033003900300030002D0043004100360044002D0034006100630031002D0038004300320038002D003500300037003300410046004300320032004200300033007D00']LOG]!><time="13:36:16.172+480"
date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="environmentscope.cpp:263">
<![LOG[Environment scope successfully created: Global\{BA3A3900-CA6D-4ac1-8C28-5073AFC22B03}]LOG]!><time="13:36:16.172+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212"
file="environmentscope.cpp:623">
<![LOG[Setting LogMaxSize to 1000000]LOG]!><time="13:36:16.172+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:555">
<![LOG[Setting LogMaxHistory to 1]LOG]!><time="13:36:16.172+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:556">
<![LOG[Setting LogLevel to 0]LOG]!><time="13:36:16.172+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:557">
<![LOG[Setting LogEnabled to 1]LOG]!><time="13:36:16.172+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:558">
<![LOG[Setting LogDebug to 1]LOG]!><time="13:36:16.172+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:559">
<![LOG[UEFI: false]LOG]!><time="13:36:16.172+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:569">
<![LOG[Loading variables from the Task Sequencing Removable Media.]LOG]!><time="13:36:16.172+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:584">
<![LOG[Loading Media Variables from "D:\sms\data\variables.dat"]LOG]!><time="13:36:16.172+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsremovablemedia.cpp:322">
<![LOG[Succeeded loading resource DLL 'X:\sms\bin\i386\1033\TSRES.DLL']LOG]!><time="13:36:16.172+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="util.cpp:964">
<![LOG[Setting SMSTSLocationMPs TS environment variable]LOG]!><time="13:36:16.172+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
<![LOG[Setting _SMSMediaGuid TS environment variable]LOG]!><time="13:36:16.172+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
<![LOG[Setting _SMSTSBootMediaPackageID TS environment variable]LOG]!><time="13:36:16.172+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
<![LOG[Setting _SMSTSBootMediaSourceVersion TS environment variable]LOG]!><time="13:36:16.172+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
<![LOG[Setting _SMSTSBrandingTitle TS environment variable]LOG]!><time="13:36:16.187+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
<![LOG[Setting _SMSTSCertSelection TS environment variable]LOG]!><time="13:36:16.187+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
<![LOG[Setting _SMSTSCertStoreName TS environment variable]LOG]!><time="13:36:16.187+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
<![LOG[Setting _SMSTSDiskLabel1 TS environment variable]LOG]!><time="13:36:16.187+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
<![LOG[Setting _SMSTSHTTPPort TS environment variable]LOG]!><time="13:36:16.187+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
<![LOG[Setting _SMSTSHTTPSPort TS environment variable]LOG]!><time="13:36:16.187+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
<![LOG[Setting _SMSTSIISSSLState TS environment variable]LOG]!><time="13:36:16.187+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
<![LOG[Setting _SMSTSMediaCreatedOnCAS TS environment variable]LOG]!><time="13:36:16.187+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
<![LOG[Setting _SMSTSMediaPFX TS environment variable]LOG]!><time="13:36:16.187+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
<![LOG[Setting _SMSTSMediaSetID TS environment variable]LOG]!><time="13:36:16.187+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
<![LOG[Setting _SMSTSMediaType TS environment variable]LOG]!><time="13:36:16.187+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
<![LOG[Setting _SMSTSPublicRootKey TS environment variable]LOG]!><time="13:36:16.187+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
<![LOG[Setting _SMSTSRootCACerts TS environment variable]LOG]!><time="13:36:16.187+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
<![LOG[Setting _SMSTSSiteCode TS environment variable]LOG]!><time="13:36:16.187+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
<![LOG[Setting _SMSTSSiteSigningCertificate TS environment variable]LOG]!><time="13:36:16.187+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
<![LOG[Setting _SMSTSStandAloneMedia TS environment variable]LOG]!><time="13:36:16.187+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
<![LOG[Setting _SMSTSSupportUnknownMachines TS environment variable]LOG]!><time="13:36:16.187+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
<![LOG[Setting _SMSTSTimezone TS environment variable]LOG]!><time="13:36:16.187+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
<![LOG[Setting _SMSTSUseFirstCert TS environment variable]LOG]!><time="13:36:16.187+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
<![LOG[Setting _SMSTSx64UnknownMachineGUID TS environment variable]LOG]!><time="13:36:16.187+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
<![LOG[Setting _SMSTSx86UnknownMachineGUID TS environment variable]LOG]!><time="13:36:16.187+480" date="12-19-2014" component="TSMBootstrap" context="" type="1" thread="1212" file="tsmediawizardcontrol.cpp:604">
NSutton

Similar Messages

  • I'm often having issues with clients not seeing or being able to open attachments, font formatting changes (on the pc end) and the inability to use HTML signatures to promote our company brand.

    I'm often having issues with clients not seeing or being able to open attachments, font formatting changes (on the pc end) and the inability to use HTML signatures to promote our company brand.

    I imagine your clients must be using Outlook, which is seriously broken when it comes to e-mail standards, especially HTML e-mail. You can work around the issues with Outlook by only sending plain-text e-mails and making sure that, in the Edit -> Attachments menu, the last two options are checked. Unfortunately, that means that HTML signatures are out.
    If you need something with a fancy layout, either attach a PDF file to the e-mail or include a link to a website in the e-mail.

  • Webdav with client ssl certificate

    I have created one webdav enable site in apple mac mini server using apache. The webdav site is secured with https as well as client certificate.
    While browsing the website using safari/IE everything is working fine,but with ipad's webdav utility it is not working.Client cert is not picking up by webdav nav tool, although the client ssl cert is installed in ipad.

    Some more checking using wireshark on the destination server.
    I created a simple html page that is contained under a directory that requires SSL and a client certificate, as configured in the apache configuration.
    This works fine from the IE and Firefox desktop browsers.
    Now, using Safari on the iPad with the appropriate certificates installed (client cert and CA cert) using the profile management tool, I attempted to connect to this page.
    Wireshark shows the iPad contacting the server and the TLSv1 protocol selection (Client Hello and Server Hello).
    Following this the server issues the requested server certificate and the CA cert to the iPad device.
    The iPad device responds with an ACK and this is where it stops the communication. No further packets appear.
    During this time, the iPad has requested that a client certificate be selected using the dialog and the appropriate client cert is selected, however the network transaction does not show the iPad ever sending this certificate to the server.

  • Issues with Clients moving from Autonomous to LWAPP

    I have a fairly large wireless rollout of access points at my hospital's main campus and then I have 41 remote sites that have approximately 3 to 10 access points at each location.
    My problem is this, I just converted one site from 9 autonomous access point over to LWAPP. The site has a 10 meg metro Ethernet connection so I know its not the link back to me. We have 26 Motion Tablets with Atheros wireless clients at that location that utilize a Citrix application called Logician. We have been having some issues with the Motion tablets holding the Citrix connection, but once we converted this site, those clients have really been having issues.
    There is a high density of access points so coverage is not an issue, but I didn't know if anyone else out there may have a similar scenario and could lend some advise as to why the LWAPP causes so many issues.
    Thanks in advance.

    Hi. LWAPP itself should not cause service to be worse; because of the dynamic nature of its settings, it should actually improve connectivity.
    Do these wireless clients have access to any services (e.g. internet) that do not require use of Citrix? If so, how is the performance there? If you're getting consistent, reasonably quick internet access, but your Citrix session keeps failing; it may not be a WLAN issue per se.
    I have done several implementations of Citrix over WLAN for hospitals. Most of the time if there are connection interruptions, it boils down to one of two problems.
    1.) Interference: Hospitals are very hostile environments for RF. Various building materials, large machinery, and irregular shapes in the floorplan make it difficult for RF to travel consistently.
    2.) Citrix settings: Citrix is a highly configurable application. There are session timeout settings which can be tweaked which may make the system more tolerant to momentary lapses in connectivity.
    My suggestion would be to see if the issue is limited to Citrix traffic only; and if it is, look at how Citrix is configured. If you're finding sub-par performance with all wireless traffic, then maybe it's an interference issue that keeps knocking you off the WLAN. If that is the case, I would suggest a professional wireless consultant should come in and decide on the best methods for giving you more consistent service.
    Hope this helps! If so, please rate.

  • Issue with self signed certificates on jetdirect J7949E

    I'm having a baffling issue with certificates generated internally for use with some HP printers. I can create certificates and install them on J8003E model jetdirect cards and they work fine. When I try to install certs on any of the J7949E cards they fail with an invalid file message. This applies to the root cert as well.
    I'm using the Microsoft cert. authority to generate the files.
    The printers with the problematic jet direct cards are 4700 Color laserjets and the working models are 4015x monochrome laser printers. Has anyone had this problem and what was done to resolve it? I'm running the latest version of the firmware on the jetdirect cards but the problem existed with older versions as well.

    Ok, I've validated my html and I'm getting a few errors related to Angular. They're all one of two types of errors
    Error 1:
    <div ng-controller="ExampleController">
    Gets the following error:
    Attribute ng-controller not allowed on element div at this point.
    Error 2:
    <my-directive></my-directive>
    Gets the following error:
    Element my-directive not allowed as child of element div in this context. (Suppressing further errors from this subtree.)
    Error 1 is for any Angular related thing...ng-click, ng-controller, ng-show, etc.
    Error 2 appears where all my custom directives are.
    I did a comparison between the not-working extension and a working one that also uses Angular (without any custom elements). When I validated the working extension, it returned a bunch of Error 1's but no Error 2's (this is expected, seeing as there are no custom elements).
    To your question about dynamic HTML - there is none. All of the files are static after they're installed. I double checked this by running a diff-merge between the extension before and after it has been run once. They are exactly the same, so no files are changing.
    There are known issues with custom directives in older browsers like IE8 - http://www.befundoo.com/blog/angularjs-directives-in-ie8/
    Out of curiosity, I tried adding elements in the head, as described in the above blog, inside my extension. This did not have any effect, and the extension still fails.
    I'm considering rewriting my directives as attributes instead of elements, and seeing if that does it. That would take some time though, so if the above info helps narrow down the problem or raises other questions of yours, I'm all ears! Thanks again for all the replies!

  • JOB WORK CHALLAN - CONFIGURATION  related issue with client .

    HI FRIENDS ,
    CLIENT PROCESS
    STAGE 1: CLIENT SENDING THE SEMI-FINISHED MATERIAL UNDER JOB WORK CHALLAN ( 57-F ) TO JOB-WORKER.
    LET SAY 1000
    STAGE 2: ONCE JOB-WORKER RENDERING (AFTER POLISHING-CLIENT REQ ) THE MATERIAL ,THEY WILL INTIMATE TO THE CLIENT BY MAIL OR PHONE.
    LET SAY 500 ON 1.1.2012 , 500 ON 2.1.2012
    STAGE 3: CLIENT RAISE THE INVOICE AGAINST CUSTOMER DEPENDS ON MATERIAL QUANTITY . AND SEND IT THROUGH MAIL TO JOB-WORKER.
    STAGE 4 : JOB-WORKER DELIVERS THE MATERIAL TO CUSTOMER DIRECTLY( NOT TO CLIENT PLACE) ALONG WITH CLIENT INVOICE COPY.
    STAGE 5 : JOB-WORKER UPDATE THE CHALLAN & RAISE THE INVOICE AGAINST THE SERVICE TO THE CLIENT .
    REQUIREMENT :
    1. HOW TO MAP THIS PROCESS IN SAP IN DETAIL?
    2. HOW TO SHOW THE INVENTORY IN CLIENT'S PLANT?
    3. DOES IT COMES UNDER RG1 REGISTRY(WHAT ARE THE DOCUMENTS NEED TO UPDATE )?

    This is very sorted out topic.
    You can find lot of link, which you can search with search term "JOB WORK".
    Have look on some of the links, which I can suggest:
    - SDN Article on [Direct Subcontracting Process (SAP SD & MM)|http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/d0dbde93-6fa4-2c10-edb9-e477fa85b232]
    - subcontracting
    - Job work in SD subcontracting.
    - SD - Subcontracting
    Follow following path in IMG for Subcontraction Configuration:
    SPRO - Logistics General - Tax on Goods Movements - India - Business Transactions - Subcontracting - Subcontracting Attributes
    There Excise TT to follow is 57FC.
    Regards
    JP

  • Website Owner having new issues with Clients and Windows 8

    I own a website that has a home-programmed chat. We've been in business about 12 years without any issues with compatibility. The chat is programmed in C and runs in a standard browser.
    Lately I've had a few users (3 or 4) that have upgraded their machines and can no longer run the chat.
    Most users that use Windows 8, or 7, or Vista, or whatever, have no problems. They can use the latest versions of IE, Firefox, Chrome, whatever they choose.
    However, these users with problems can use none of the above.
    I've gone through standard programs that block a chat, like firewalls and other spyware preventions. Shutting these off doesn't resolve the problem. Conflicting programs doesn't seem to be an issue, either. They aren't touch screen so I don't believe it
    is a problem with the video card.
    So that brings me back to the OS. The common thread seems to be that they are HP computers, and they have a new install of Windows 8. I think that there might be a missing DLL or other C Library that HP's installation of Windows 8 might be lacking.
    Any suggestions on if I'm on the right track, and more importantly, how do I fix this problem?

    Hi,
    Seems this is a web-based chatting program, I suggest you add the site to a compatibility view list, (launch IE, Tools\Compatibility View list) then check this issue again. Check the error message and infromation recorded in the event viewer to find out
    the cause.
    Make sure the computers have all the latest updates, especially for video and audio drivers.
    Clear the cache\temporary internet files in IE, or test this issue in a no add-ons mode.
    From your description, it also sounds like a "defect\bug" for the chatting-program on Windows 8 on HP computers, if so, it should be related with development. you may find more help in the developer forum
    Internet Explorer Extension Development Forum
    http://social.msdn.microsoft.com/Forums/ie/en-US/home?forum=ieextensiondevelopment
    Yolanda Zhu
    TechNet Community Support

  • Issues with client authentication using certificates

    We have upgraded from sun-one directory server 5.1 sp4 to odsee 11g. We were using client certificates for authenticating connections to the directory server and it is no longer working. We had a certmap.conf that worked fine on 5.1 but it no longer seems to work on 11g. We are getting the following errors in the access log:
    [04/Apr/2011:16:41:17 -0400] conn=1692 op=-1 msgId=-1 - SSL failed to map client certificate to LDAP DN (User's LDAP entry doesn't have any certificates to compare)
    [04/Apr/2011:16:41:17 -0400] conn=1692 op=0 msgId=1 - BIND dn="" method=sasl version=3 mech=EXTERNAL
    [04/Apr/2011:16:41:17 -0400] conn=1692 op=0 msgId=1 - RESULT err=49 tag=97 nentries=0 etime=0.099660, client certificate mapping failed
    I checked and there is a usercertificate;binary entry which contains the certificate.
    Also, it does seem to find the entry for the cn, as shown by these two lines:
    [04/Apr/2011:16:41:17 -0400] conn=-1 op=-1 msgId=-1 - ENTRY dn="cn=XXXXXXXX, ou=certs, ou=yyyy,dc=zzzzzzz,dc=net"
    [04/Apr/2011:16:41:17 -0400] conn=-1 op=-1 msgId=-1 - RESULT err=0 tag=101 nentries=1 etime=0.001150
    All we did was to install the upgraded server software and migrate the data. Is there something more required for this version in order to implement client certificate authentication? I thought I saw something about a directory server proxy, which we aren't running. Is that necessary for this to work?
    Any help you can provide would be greatly appreciated.
    Thanks.
    dean

    I am using verifycert set to on. We want to verify the certificate.
    I am not using CmapLdapAttr. I saw a reference in one other post regarding using that attribute. I am hesitant to go there because while it seems to be a fix, I was unsure whether it was something which happened to work but was not part of standard implementation of using client certificates or whether it was a requirement in order for it to work and it was just serendipitous that it wasn't needed in 5.1. I wouldn't want to start using, apply a patch, and have it stop working again because that was a workaround.
    Thanks.

  • Issue with Loading Multiple Videos within a Project

    I am assembling a Captivate project that needs to include several videos that a quite large. When the entire project is written as a Windows executable projector file, the player does not open because the operating system cannot allocate enough memory to open the file.
    I was adding these videos to the project through the "Event Video" option and browsing to the FLV located on my computer. When the Windows projector is created, it loads the entire video into the executable file.
    Is there a way to load a SWF animation that has reference points to the video (located within the same directory as the SWF) so that when the Windows Projector file is written, it does not need to embedd the entire video into the executable file?
    I am currently using Captivate 6.0.1.240.

    Just regarding point 2. 
    You will probably find that working in manageable sections (story logical and file size) will be best practice for all post subsequent to edit.
    Ughhh, that is my concern! I'm hoping by having it broken down and organized in self-contained sequences, and by story arc--Prologue, Act One, Act Two...that this will work as good manageble sections as well as easier for story layout.
    I hope by only bringing in each edited rough cut sequence into the Dolly Master Project File it will keep the Master file mean and clean. Also, the reason I started with Prelude was in hopes that I would have a more organized structure for editing, but I am not sure if by bringing in the Prelude rough cuts and supporting footage files if that helps or undermines the too large file issue. However, I really do not have a clue as to what things will really make my files too large or too complicated.
    A lot of hope there I know!
    I try to make it a habit of hitting ctrl-s everytime I complete an action. I have auto-save set to every 15 minutes. I save the project file on two internal hard drives and one external hard drive. At the end of the work day or more often if I have accomplished a lot I email myself a dated/timed copy of the project files. I'm thinking it might be better if I get another dropbox account to have another offsite back-up.
    Well, last night I took a Leap of Faith in Adobe Prelude. I established my project files and sent all of my rough cuts to the appropriate project files. I have to say it was pretty painless. In Prelude right-click rough cut > left-click send to Premiere Pro > wait a few seconds.
    The only drawback is that I could not select a bin in Premiere in which to send the footage and rough cuts. So I had to drag the footage/rough cut files to the appropriate bin. This would be a nice feature to add.
    Here is a link to a pic of my desktop.
    http://imgur.com/Njat387
    So now the story layout begins! Thanks again and again!

  • Issues with client looses connection with 6.0.196.0

    Hi,
    We recently upgraded our Wisms to version 6.0.196.0 and after the upgrade we have seen the clients sometimes looses connectivity and has problems to connect. We use an network with 802.1x  and PeapMschapv2 with dynamic WEP.
    We have disabled aggresive load-balancing but still see the issues.
    Any ideas anyone?
    Regards,
    Martin

    Hi,
    Any news for these problems? Did the version 7.x fix these CAPWAP UP/DOWN problems with HREAP APs? It seems that I'm having these same problems now. Local APs seems to be fine, but HREAP APs goes UP/DOWN with versions 6.0.196.0 and 6.0.199.4.
    There are three 4404 WLCs, where are different sites' office and warehouse APs connected to. The environment is configured as N + N + 1
    like following:
    WLC1 is for officeAPs. APs are 1131 and they're configured as H-REAP
    WLC2 is for warehouseAPs. APs are 1242 and they're configured as Local
    WLC3 is for backup and I used this for testing.
    After I updated all the WLCs at summer to version 6.0.196.0, there have been issues where the clients looses randomly WLAN-connections. But the complaints just came from the two largest offices. And these didn't happend immeaditly after the update, but after few months. It can be that the summer holidays was reason for it. After some investigations, I updated the WLC3 for version 6.0.199.4, which just got released at the time, and moved these two largest offices' APs to there. Complaints stopped but after a month the second largest office informed that the clients' disconnections started to raise again and the WLAN-network has become unstable again. First there was just couple of issues but it have been raised as the time goes by.
    When I made some more investigation to this site, I noticed that the APs' CAPWAP goes DOWN and UP randomly for a second:
    *Nov 12 07:39:29.537: %CAPWAP-5-CHANGED: CAPWAP changed state to DOWN
    *Nov 12 07:39:29.590: %LINK-5-CHANGED: Interface Dot11Radio0, changed state to administratively down
    *Nov 12 07:39:29.590: %LINK-5-CHANGED: Interface Dot11Radio1, changed state to administratively down
    *Nov 12 07:39:29.759: %CAPWAP-5-CHANGED: CAPWAP changed state to UP
    *Nov 12 07:39:29.811: %LINK-3-UPDOWN: Interface Dot11Radio0, changed state to up
    *Nov 12 07:39:29.812: %LINK-5-CHANGED: Interface Dot11Radio1, changed state to reset
    *Nov 12 07:39:29.849: %LINK-3-UPDOWN: Interface Dot11Radio1, changed state to up
    *Nov 12 07:39:29.850: %LINK-5-CHANGED: Interface Dot11Radio0, changed state to reset
    *Nov 12 07:39:29.889: %LINK-3-UPDOWN: Interface Dot11Radio0, changed state to up
    Then I investigated some more and noticed that this happens on all of the H-REAP APs and almost in the same time:
    *Nov 12 07:39:29.537: %CAPWAP-5-CHANGED: CAPWAP changed state to DOWN - WLC3, second largest site's AP (6.0.199.4)
    *Nov 12 07:40:17.439: %CAPWAP-5-CHANGED: CAPWAP changed state to DOWN - WLC3, second largest site's other AP (6.0.199.4)
    *Nov 12 07:41:20.297: %CAPWAP-5-CHANGED: CAPWAP changed state to DOWN - WLC3, largest site's AP (6.0.199.4)
    *Nov 12 07:42:31.928: %CAPWAP-5-CHANGED: CAPWAP changed state to DOWN - WLC1, random site's AP (6.0.196.0)
    When I checked the warehouseAPs, which are configured as local in the WLC2 (6.0.196.0), there was nothing like this in the logs. Logs are clean.
    But when H-REAP is configured for these APs, the clients should not be disconnected when the CAPWAP goes down? And this whole "process"  seems to last just for a second. Not sure if this is the real reason for these client disconnections, but at least this is not normal. I haven't heard complaints from smaller sites, even when APs at them also does the same.
    I don't feel great to update the WLCs for the version 7.x, because it just seems to be new feature release, but if it fixes these, then I should think about it. Has someone, who had these same problems, got this fixed with version 7? Or has TAC provide some other patches for this?
    Thanks,
    Joni

  • ESB Reprocessing Issue with client API

    All,
    We are currently working on reprocessing the failed ESB instances using the client API. The instances are getting reprocessed but on a random basis are are getting the below exception. The reprocessing code is also provided.
    oracle.tip.esb.client.ClientException: 404 : Not Found
    08/07/10 08:26:51 at oracle.tip.esb.client.HttpClient.invoke(HttpClient.java:118)
    08/07/10 08:26:51 at oracle.tip.esb.client.impl.ConsoleClientImpl.perform(ConsoleClientImpl.java:148)
    08/07/10 08:26:51 at oracle.tip.esb.client.impl.ConsoleClientImpl.<init>(ConsoleClientImpl.java:71)
    08/07/10 08:26:51 at oracle.tip.esb.client.ConsoleClientFactory.getConsoleClient(ConsoleClientFactory.java:32)
    08/07/10 08:26:51 at com.cccis.cfcs.reprocess.RecoveryHelper.resubmitFailedInstance(RecoveryHelper.java:129)
    08/07/10 08:26:51 at com.cccis.cfcs.reprocess.RecoveryHelper.reprocessESBFailedInstances(RecoveryHelper.java:195)
    08/07/10 08:26:51 at com.cccis.cfcs.reprocess.ReprocessServlet.doGet(ReprocessServlet.java:107)
    08/07/10 08:26:51 at javax.servlet.http.HttpServlet.service(HttpServlet.java:743)
    08/07/10 08:26:51 at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    08/07/10 08:26:51 at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:713)
    08/07/10 08:26:51 at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
    08/07/10 08:26:51 at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
    08/07/10 08:26:51 at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
    08/07/10 08:26:51 at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:302)
    08/07/10 08:26:51 at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:190)
    08/07/10 08:26:51 at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
    08/07/10 08:26:51 at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
    08/07/10 08:26:51 at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
    08/07/10 08:26:51 at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
    08/07/10 08:26:51 at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
    08/07/10 08:26:51 at java.lang.Thread.run(Thread.java:595)
    08/07/10 08:26:51 Caused by: java.io.IOException: 404 : Not Found
    08/07/10 08:26:51 at oracle.tip.esb.client.HttpClient.throwException(HttpClient.java:223)
    08/07/10 08:26:51 at oracle.tip.esb.client.HttpClient.postAndReceive(HttpClient.java:150)
    08/07/10 08:26:51 at oracle.tip.esb.client.HttpClient.invoke(HttpClient.java:114)
    public void resubmitFailedInstance(String flowID,SystemDetails sysdetail) {
    System.out.println("Within the resubmitFailedInstance method ************ ");
    String HOST = sysdetail.getHostName();
    System.out.println("Host at the beginning....................................."+HOST);
    int PORT = Integer.parseInt(sysdetail.getPort());
    System.out.println("Port at the beginning.............."+PORT);
    String USER_NAME = sysdetail.getUserName();
    System.out.println("User name at the beginning....................."+USER_NAME);
    String securityCredentials = sysdetail.getSecurityCredentials();
    System.out.println("Password at the beginning......................."+securityCredentials);
    String filter = FILTER;
    ConsoleClient client = null;
    String data = null;
    HashMap<String, String> requestProps = new HashMap<String, String>();
    try {
    requestProps.put("filter", URLEncoder.encode(filter, "UTF-8"));
    client =
    ConsoleClientFactory.getConsoleClient(HOST, PORT, USER_NAME,
    securityCredentials);
    data = client.perform("GetFailedInstances", requestProps);
    DOMParser parsedXML = new DOMParser();
    ByteArrayInputStream inArray = new ByteArrayInputStream(data.getBytes());
    parsedXML.parse(inArray);
    XMLDocument xmldoc = parsedXML.getDocument();
    NodeList nl = xmldoc.getElementsByTagName("failedInstance");
    for (int i = 0; i < nl.getLength(); i++) {
    Element el = (Element)nl.item(i);
    String flowId = el.getAttribute("flowId");
    String systemId = el.getAttribute("systemId");
    String retryable = el.getAttribute("retryable");
    String payload = el.getAttribute("inPayload");
    System.out.println("System ID :**********" + systemId);
    System.out.println("retryable :*********" + retryable);
    System.out.println("Payload :***************" + payload);
    if (flowId != null && flowId.equals(flowID)) {
    if (retryable.equals("true") && systemId != null) {
    System.out.println("Before calling the testResubmitInstanceById method ************");
    HashMap<String, String> requestProp = new HashMap<String, String>();
    requestProp.put("flowId", flowId);
    requestProp.put("systemId", systemId);
    System.out.println("Before reprocessing*************");
    String output = client.perform("ResubmitInstanceById", requestProp);
    System.out.println("Result>>>>>>>>>>>>>>>>>>>>"+output);
    System.out.println("After reprocessing**********");
    break;
    } catch (UnsupportedEncodingException e) {
    e.printStackTrace();
    } catch (ClientException e) {
    e.printStackTrace();
    } catch(Exception e) {
    e.printStackTrace();
    public void reprocessESBFailedInstances(String msgID,
    SystemDetails sysdetail) {
    System.out.println("Within the reprocess failed instances*****************");
    Connection con = null;
    Statement stmt = null;
    String flowID = null;
    String flowIDSql =
    "select flow_id from esb_activity a,esb_tracking_field_value t where a.id=t.activity_id and t.value='" +
    msgID + "'";
    try {
    String URL = RB_READER.getString("URL");
    String userName = RB_READER.getString("userName");
    String password = RB_READER.getString("password");
    DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
    con = DriverManager.getConnection(URL, userName, password);
    stmt = con.createStatement();
    ResultSet res = stmt.executeQuery(flowIDSql);
    while (res.next()) {
    flowID = res.getString("FLOW_ID");
    System.out.println("Flow ID :***********" + flowID);
    resubmitFailedInstance(flowID,sysdetail);
    System.out.println(":::::::::::::::::::::::::::::::::::");
    System.out.println("End of the method*************");
    } catch (SQLException e) {
    e.printStackTrace();
    } catch (Exception e) {
    e.printStackTrace();
    Regards,
    M.Rajesh

    Hi Rajesh,
    I am trying to get the failed instances using the client API in your code what is the FILTER string that you have used since i have used below code to get the payload but not able to get the payload.If you are able to get the payload please do reply me back.
    String payload = el.getAttribute("inPayload"); // Not getting the payload
    Hoping for early reply from you.
    with regards
    NK

  • Any issues with Premiere Pro CC and Avid Media Composer on same system?

    Hi all:
    Searched around for this but couldn't find similar question.
    Am a long time Premiere Pro user, but have something coming up where I'm having to use Avid MC to collaborate with a staff editor for the duration of the job.  Am wondering if I should expect any conflicts or issues to installing both Premiere Pro CC and Media Composer on the same system?  Any insight would be most welcome.
    Running Adobe CC on a Windows 7 HP Z820, Dual Xeon Processors, 128Gb RAM.
    Thanks!

    hi Jim,
    well it turns out that Premiere update 7.2.2. put my computer into disarray, and caused my multi-camera monitor to lag (about 6 seconds) behind my program monitor .. so my my multi-cam monitor (with my 2 or 3 camera feeds) would  be playing footage that is 6 seconds or so BEHIND what was playing on the program monitor.
    that's the gist of it..
    anyway the fine folks at Adobe, talked me through the process of going back to premiere 7.2.0 and that fixed the issue.
    i hope future updates resolve this issue so that i can get back up to the minute on my software
    thanks
    jahZ

  • Multithreading issue with Client/Server chat program

    In a nutshell, I just recently starting attempting to use Sockets and decided I wanted to give a go at a chat program. I have some experience with threads but I know little about how to find and fix multithreading issues. I think this is my problem right now since I am deadlocking while connecting and disconnecting client-side ... and updates about connection status of a client are not always displaying correctly server-side.
    [ Code Snippet|http://snipplr.com/view/15206/clientserver-chat-program/]
    Thanks for the help

    NOTE: all catch clauses have been omitted for clarity. They all just perform System.err.println() with the msg embedded
    Very valid point. I cut out the GUIs and just tried having the Server/Client communicate. I am still having concurrency issues. This is my first attempt at synchronized methods and locking objects so go easy on me if I did something(s) noob =D
    public class MySocket
        public static final String QUIT = "~~QUIT~~";
        private ObjectOutputStream out;
        private ObjectInputStream in;
        private Socket conn;
        public MySocket(String ip)
            obsList = new ArrayList<IClientObs>();
            try
                conn = new Socket(ip, 5000);
                if (conn.isConnected())
                    out = new ObjectOutputStream(conn.getOutputStream());
                    in = new ObjectInputStream(conn.getInputStream());
        public synchronized String nextMsg()
            String msg = "";
            try
                synchronized(in)
                    msg = (String)in.readObject();
                    notify(msg);
            return(msg);
        public synchronized boolean sendMsg(String msg)
            boolean sentMsg = false;
            try
                synchronized(out)
                    if (out != null)
                        out.writeObject(msg);
                        out.flush();
                        sentMsg = true;
            return(sentMsg);
        public synchronized void closeConn()
            try
                synchronized(this)
                    sendMsg(QUIT);
                    conn.close();
                    out.close();
                    in.close();
        public synchronized Socket getConn()
            return(conn);
        public synchronized ObjectOutputStream getOutStream()
            return(out);
        public synchronized ObjectInputStream getInStream()
            return(in);
       //Observer Pattern implemented below   
    public class Server extends Thread
        public static final int MAX_CLIENTS = 2;
        public static final String QUIT = "~~QUIT~~";
        private ServerSocket server;
        private ArrayList<ConnClient> conns;
        private int connCount;
         * Constructor for objects of class Server
        public Server()
            conns = new ArrayList<ConnClient>();
            obsList = new ArrayList<IServerObs>();
            connCount = 0;
        public void startNow()
            this.start();
        public void run()
            runServer();
        public synchronized void runServer()
            try
                setup();
                while (true)
                    waitForConn();
                    processComms();
        private synchronized void setup() throws IOException
            server = new ServerSocket(5000);
            notify("Server initialized.\n");
        private synchronized void waitForConn() throws IOException
            if (connCount < MAX_CLIENTS)
                notify("Waiting for connection...\n");
                Socket conn = server.accept();
                if (conn.isConnected())
                    conns.add(new ConnClient(conn));
                    notify("Client connected @ '" + conns.get(connCount).getIP() + "'.\n");
                    connCount++;
            else
                notify("Connection request rejected; max connections have been reached.\n");
        private synchronized void processComms() throws IOException, ClassNotFoundException
            //Receive any msgs sent by clients and forward msg to all clients
            for(ConnClient rcvClient : conns)
                String msg = rcvClient.nextMsg();
                //if client quit, then close connection and remove it from list
                if (msg.equals(QUIT))
                    notify("Client disconnected @ '" + rcvClient.getIP() + "'.\n");
                    rcvClient.closeConn();
                    conns.remove(rcvClient);
                    connCount--;
                else
                    for(ConnClient sndClient : conns)
                        sndClient.sendMsg(msg);
        public synchronized void shutdown()
            try
                server.close();
                for(ConnClient client :conns)
                    client.closeConn();
       //Observer Pattern implemented below
    }I also found another issue that I haven't thought up a way to deal with yet. When the user starts the program the follow line is executed "conn = server.accept();" which halts execution
    on that thread until a connection is established. What if the user wants to stop the server before a connection is made? The thread keeps running, waiting for a connection. How do I kill this thread?
    On this last issue (I figured by adding the follow code to my action listener inside of my server gui I could stop the thread safely but it's no good so far)
    public void actionPerformed(ActionEvent e)
            Object src = e.getSource();
            if (src == strBtn)
                if (server == null)
                    strBtn.setEnabled(false);
                    stpBtn.setEnabled(true);
                    server = new Server();
                    server.addObserver(this);
                    server.start();
                else
                    console.append("Console: Server is alread initiated.\n");
            else if (src == stpBtn)
                synchronized(server)
                strBtn.setEnabled(true);
                stpBtn.setEnabled(false);
                server.shutdown();
                server = null;
                console.append("Console: Server has been stopped.\n");
        }Edited by: mcox05 on May 21, 2009 10:05 AM
    Edited by: mcox05 on May 21, 2009 10:17 AM
    Edited by: mcox05 on May 21, 2009 10:58 AM
    Edited by: mcox05 on May 21, 2009 11:01 AM
    Edited by: mcox05 on May 21, 2009 11:03 AM
    Edited by: mcox05 on May 21, 2009 11:03 AM

  • A fix for the Mozilla Firefox SSL Certificate Validation Security Weakness vulnerability? This appears to be an issue with not revalidating certificates when loading HTTPS pages from cache.

    We have to close vulnerabilities for PCI & Cybertrust certification. We have upgraded users running Firefox to version 7.0.1 but we are still receiving the message: Mozilla Firefox SSL Certificate Validation Security Weakness. Researching the issue, it appears to be related to certificates not being revalidated when loading HTTPS pages from cache. The bug report I found is:
    Bug 660749 - Firefox doesn't (re)validate certificates when loading a HTTPS page from the cache

    cookies.squite answer is Today at 5:15 PM .
    New profile, same problem.
    We've already established it is not a add-ons problem but obviously there will be less add-ons in this new profile to help exclude.
    Since there is two PC profiles on the PC, I tried the second profile, same problem. Used the RESET FF function on the second PC profile...same thing...even followed the instruct for uninstall &re-install...same problem.
    (3) different virus scanners, no hard core problems.
    Suspect how I have something in Windows setup that no one else is using?

  • Issue with client-side rules after Groupwise to Office365 migration

    We are preparing for migration from Groupwise to Office365 and face an issue for which I do not have a solution for: Groupwise rules currently contain functional mailboxes that include rules to implement business logic. When migrating these mailboxes to
    Office365, the rules must be applied manually (since Quest can't handle it). So far so good. However, some of these business logic rules are client-side rules, which will never be executed because it's a functional mailbox.
    The issue arises among multiple mailboxes, for instance for a customer-receive mailbox that moves incoming mail based on subject to a sub-folder.
    Anyone an idea how to implement this, without having to use a logged-on user/outlook client?
    Please advice.
    Gr, Mike Schmeitz

    We are preparing for migration from Groupwise to Office365 and face an issue for which I do not have a solution for: Groupwise rules currently contain functional mailboxes that include rules to implement business logic. When migrating these mailboxes
    to Office365, the rules must be applied manually (since Quest can't handle it). So far so good. However, some of these business logic rules are client-side rules, which will never be executed because it's a functional mailbox.
    The issue arises among multiple mailboxes, for instance for a customer-receive mailbox that moves incoming mail based on subject to a sub-folder.
    Anyone an idea how to implement this, without having to use a logged-on user/outlook client?
    Please advice.
    Gr, Mike Schmeitz
     

Maybe you are looking for

  • The first tab will not close, and often does not load all of a page.

    When I open firefox, the first tab always has 'search bookmarks and history' in the address bar, instead of the url of my homepage, and it will not close.

  • 4 pin power supply

    hello folks I am wondering what and why some mb's have the small 4 pin power supply for the cpu and others don't. I have two machines I have put together and one does and the other don't. Can't find the correct literature to satisfy my curiosity. ple

  • Intrastat declaration

    The intrastat provides EU authorities with statistics on foreign trade with in Europe. How to configure this intrastat in SAP and how it is done. Kindly send me some information on this.

  • Playmemories app for Windows phone

    I have recently bought the HDR-AS100VR action cam, and has desperately beeb looking for the Playmemories app for my also recently acquired Windows phone. This however seems futile. I can find several post in here and others on the internet dating bac

  • Truncate on a partitioned table

    hi all. A table has some paritions.I try to delete all rows from one of these partitions. How to use truncate to do this? Regards Bacer