El 25/03/2015 21:41, "Joel Sherrill" <joel.sherr...@oarcorp.com> escribió: > > > > On March 24, 2015 8:37:57 AM CDT, Daniel Gutson < daniel.gut...@tallertechnologies.com> wrote: > >In order to avoid code duplication and ease future bugfixing, I suggest > >to have a conditional casting and leave the core code alone, something > >like > > > >#ifdef __rtems__ > >#define cast(x) ((unsigned long int)x) > >#else > >#define cast(x) (x) > >#endif > > > >...cast(final[ 0] << 16)... > > > >#undef cast > > Good suggestion. The big concern is really just making sure changes made to the imported code is clear. I suppose this does it as well.
Is this really RTEMS-specific? If it isn't, what about contributing it to the original code? > > > >El 23/03/2015 11:52, "Joel Sherrill" <joel.sherr...@oarcorp.com> > >escribió: > > > >--- > > cpukit/libcrypt/crypt-md5.c | 12 ++++++++++++ > > 1 file changed, 12 insertions(+) > > > >diff --git a/cpukit/libcrypt/crypt-md5.c b/cpukit/libcrypt/crypt-md5.c > >index c60dcf8..78ae0bc 100644 > >--- a/cpukit/libcrypt/crypt-md5.c > >+++ b/cpukit/libcrypt/crypt-md5.c > >@@ -133,6 +133,17 @@ crypt_md5_r(const char *pw, const char *salt, > >struct crypt_data *data) > > > > p = passwd + strlen(passwd); > > > >+#if defined(__rtems__) > >+ l = ((long int) final[ 0]<<16) | ((long int) final[ 6]<<8) | > >final[12]; > >+ _crypt_to64(p, l, 4); p += 4; > >+ l = ((long int) final[ 1]<<16) | ((long int) final[ 7]<<8) | > >final[13]; > >+ _crypt_to64(p, l, 4); p += 4; > >+ l = ((long int) final[ 2]<<16) | ((long int) final[ 8]<<8) | > >final[14]; > >+ _crypt_to64(p, l, 4); p += 4; > >+ l = ((long int) final[ 3]<<16) | ((long int) final[ 9]<<8) | > >final[15]; > >+ _crypt_to64(p, l, 4); p += 4; > >+ l = ((long int) final[ 4]<<16) | ((long int) final[10]<<8) | > >final[ 5]; > >+#else > > l = (final[ 0]<<16) | (final[ 6]<<8) | final[12]; > > _crypt_to64(p, l, 4); p += 4; > > l = (final[ 1]<<16) | (final[ 7]<<8) | final[13]; > >@@ -142,6 +153,7 @@ crypt_md5_r(const char *pw, const char *salt, > >struct crypt_data *data) > > l = (final[ 3]<<16) | (final[ 9]<<8) | final[15]; > > _crypt_to64(p, l, 4); p += 4; > > l = (final[ 4]<<16) | (final[10]<<8) | final[ 5]; > >+#endif > > _crypt_to64(p, l, 4); p += 4; > > l = final[11]; > > _crypt_to64(p, l, 2); p += 2; > >-- > >1.9.3 > > > >_______________________________________________ > >devel mailing list > >devel@rtems.org > >http://lists.rtems.org/mailman/listinfo/devel > > --joel
_______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel