Home > libstrsafe

libstrsafe

Libstrsafe is a project mainly written in SHELL and C, based on the View license.

A cross platform implementation of the Safe String Library (StrSafe.h) provided by Microsoft. The library will allow multi platform software to use a single library for safe string operations. This will reduce the risk for buffer overflows and will i

Copyright (c) 2010, Jonas Sundberg [email protected]

This software has been released under the terms of the ISC license. For details, see the LICENSE file.

libstrsafe is a cross platform implementation of the Safe String Library (StrSafe.h) provided by Microsoft. The library will allow multi platform software to use a single library for safe string operations. This will reduce the risk for buffer overflows and will increase code sharing between code for different platforms.

For documentation of the functions, see the documentation for the Microsoft implementation [0].

For building the library, you might need Gnu Autotools. Without Autotools, running 'make' runs './configure' over and over again. This should be fixed in a later release.

To build, run './configure', then 'make' and finally 'make check' to run the unit tests for the library.

Most of the functionality of the library has been unit tested and the unit tests have been verified against the Microsoft implementation. For more information on the testing, see the TESTING file.

Some things haven't been tested and it is possible that the behaviour is different from the behaviour of the Microsoft implementation in those cases. These things include but might not be limited to using more than one flag at the same time to the extended functions as well as sending input to the Gets functions that encounters EOF without a preceding line break.

For more information on the project, see the Google Summer of Code project site [1] or the GitHub repository [2].

[0] http://msdn.microsoft.com/en-us/library/ms647466%28VS.85%29.aspx [1] http://socghop.appspot.com/gsoc/student_project/show/google/gsoc2010/openafs/t127230761041 [2] http://github.com/JSund/libstrsafe

Previous:gatein