?
Solved

TFS - Downloaded file is corrupt error

Posted on 2013-12-19
8
Medium Priority
?
1,344 Views
Last Modified: 2014-03-27
Other developers can't get the latest version of files I've committed to TFS.  They get an error that says the file is corrupt.  

Anyone run into this before or have any suggestions?

Thank you.
0
Comment
Question by:greddin
  • 4
  • 3
8 Comments
 
LVL 45

Expert Comment

by:AndyAinscow
ID: 39731180
Can you get them back in their correct format or are the files also corrupt for you after downloading?
0
 

Author Comment

by:greddin
ID: 39731751
Yes, it looks like I have no trouble getting the latest version of a file that I've previously committed to TFS.
0
 
LVL 1

Expert Comment

by:David Davidson
ID: 39944056
I just ran into this problem.  The FipsAlgorithmPolicy was set to 1 on my workstation, but set to 0 on other developer workstations (I had changed it to test some settings in a more production-like environment).  Visual Studio 2012 and newer store a hash of checked-in files and use a different hash algorithm when FipsAlgorithmPolicy is set to 1.  I changed it back to 0, rebooted, made a small change to the affected file and checked it in.  Everyone else could then get the latest version.
0
Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

 

Author Comment

by:greddin
ID: 39946123
Thank you. Is the FlipsAlgorithmPolicy something changed in the registry or some where in Visual Studio?
0
 
LVL 1

Expert Comment

by:David Davidson
ID: 39946315
The FipsAlgorithmPolicy setting is stored in the Registry.  There are a few ways to change it.

In Windows Server 2003 and Windows XP the registry key is HKLM\System\CurrentControlSet\Control\Lsa.  Add a DWORD (32-bit) value named "FIPSAlgorithmPolicy" and set it to 1 for Enabled or 0 for Disabled.

In Windows Server 2008 (and newer) and Windows Vista (and newer) the registry key is HKLM\System\CurrentControlSet\Control\Lsa\FIPSAlgorithmPolicy.  Add a DWORD (32-bit) value named "Enabled" and set it to 1 to enable FIPS compliance or 0 to disable FIPS compliance.

You can also use the Local Security Policy console app in Administrative Tools to turn this setting on or off.  Navigate to Local Policies, Security Options, and either enable or disable the "System cryptography: Use FIPS compliant algorithms for encryption, hashing, and signing" policy.
0
 

Author Comment

by:greddin
ID: 39946454
Ok, On my workstation I already have a FipsAlgorithmPolicy. It's got an Enabled and it's set to a value of 1.

So just to confirm... Does them suggest I need to try setting to value of 0, reboot and try committing again?

Thanks. This seems promising for a nagging problem I've had for a long time now.
0
 
LVL 1

Accepted Solution

by:
David Davidson earned 2000 total points
ID: 39946535
If you want other people to be able to get the files you commit, you have two choices.

1) Other developers enable their FIPS Algorithm Policy.  They can even do this temporarily - they can enable FIPS compliance, get your files, and then disable FIPS compliance before working and checking anything back in.  This works as a good stop-gap measure while your entire development network works towards a standard workstation setup.

2) You disable your FIPS Algorithm Policy, check out the file you want your fellow developers to get, and check it back in (thus creating a new entry for it in TFS with a hash value your fellow developers can process).

Since the other developers on my network aren't ready to make the jump to FIPS compliance just yet, I set the Enabled value on my workstation back to 0 for now and re-checked in the files they needed.  Because of customer requirements, though, we are in the planning stages for moving the entire development network towards FIPS compliance.
0
 

Author Closing Comment

by:greddin
ID: 39958777
Thank you David. I wish I could give you more points! This problem is plagued me for a long time now.  Setting the FipsAlgorithmPolicy to 0 fixed our problem.  The other developers all had theirs set to 0.  I don't know how mine was 1.

Thanks again,
-Greg
0

Featured Post

2018 Annual Membership Survey

Here at Experts Exchange, we strive to give members the best experience. Help us improve the site by taking this survey today! (Bonus: Be entered to win a great tech prize for participating!)

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

A theme is a collection of property settings that allow you to define the look of pages and controls, and then apply the look consistently across pages in an application. Themes can be made up of a set of elements: skins, style sheets, images, and o…
As with any other System Center product, the installation for the Authoring Tool can be quite a pain sometimes. This article serves to help you avoid making these mistakes and hopefully save you a ton of time on troubleshooting :)  Step 1: Make sur…
Viewers will learn the different options available in the Backstage view in Excel 2013.
The viewer will learn how to simulate a series of coin tosses with the rand() function and learn how to make these “tosses” depend on a predetermined probability. Flipping Coins in Excel: Enter =RAND() into cell A2: Recalculate the random variable…
Suggested Courses
Course of the Month3 days, 11 hours left to enroll

599 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question