@@ -628,14 +628,9 @@ static int resolve_deps(const char *src)
628
628
/* Install ".<filename>.hmac" file for FIPS self-checks */
629
629
static int hmac_install (const char * src , const char * dst , const char * hmacpath )
630
630
{
631
- _cleanup_free_ char * srcpath = strdup (src );
632
- _cleanup_free_ char * dstpath = strdup (dst );
633
631
_cleanup_free_ char * srchmacname = NULL ;
634
632
_cleanup_free_ char * dsthmacname = NULL ;
635
633
636
- if (!(srcpath && dstpath ))
637
- return - ENOMEM ;
638
-
639
634
size_t dlen = dir_len (src );
640
635
641
636
if (endswith (src , ".hmac" ))
@@ -648,16 +643,14 @@ static int hmac_install(const char *src, const char *dst, const char *hmacpath)
648
643
hmac_install (src , dst , "/lib64/hmaccalc" );
649
644
}
650
645
651
- srcpath [dlen ] = '\0' ;
652
- dstpath [dir_len (dst )] = '\0' ;
653
646
if (hmacpath ) {
654
647
_asprintf (& srchmacname , "%s/%s.hmac" , hmacpath , & src [dlen + 1 ]);
655
648
_asprintf (& dsthmacname , "%s/%s.hmac" , hmacpath , & src [dlen + 1 ]);
656
649
} else {
657
- _asprintf (& srchmacname , "%s/.%s.hmac" , srcpath , & src [dlen + 1 ]);
658
- _asprintf (& dsthmacname , "%s/.%s.hmac" , dstpath , & src [dlen + 1 ]);
650
+ _asprintf (& srchmacname , "%.* s/.%s.hmac" , ( int ) dlen , src , & src [dlen + 1 ]);
651
+ _asprintf (& dsthmacname , "%.* s/.%s.hmac" , ( int ) dir_len ( dst ), dst , & src [dlen + 1 ]);
659
652
}
660
- log_debug ("hmac cp '%s' '%s') " , srchmacname , dsthmacname );
653
+ log_debug ("hmac cp '%s' '%s'" , srchmacname , dsthmacname );
661
654
dracut_install (srchmacname , dsthmacname , false, false, true);
662
655
return 0 ;
663
656
}
0 commit comments