public inbox for cygwin-apps-cvs@sourceware.org
help / color / mirror / Atom feed
* [rebase - The rebase tool, core of the automatic rebase facility during postinstall] branch master, updated. 73c83a42d2efafd99fbee28b037fc28e75c5268b
@ 2023-04-18  7:38 Corinna Vinschen
  0 siblings, 0 replies; only message in thread
From: Corinna Vinschen @ 2023-04-18  7:38 UTC (permalink / raw)
  To: cygwin-apps-cvs




https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/rebase.git;h=73c83a42d2efafd99fbee28b037fc28e75c5268b

commit 73c83a42d2efafd99fbee28b037fc28e75c5268b
Author: Corinna Vinschen <corinna@vinschen.de>
Date:   Tue Apr 18 09:37:26 2023 +0200

    Bump to version 4.6.3
    
    Signed-off-by: Corinna Vinschen <corinna@vinschen.de>

https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/rebase.git;h=6677e20b821f511352046234c9e3a20cd102d403

commit 6677e20b821f511352046234c9e3a20cd102d403
Author: Christoph Reiter via Cygwin-apps <cygwin-apps@cygwin.com>
Date:   Mon Apr 17 20:40:34 2023 +0200

    peflags: add support for IMAGE_DLLCHARACTERISTICS_GUARD_CF
    
    This allows for setting, clearing, and displaying the value of the
    "control flow guard" dll characteristics flag.
    
    The flag for MSVC is called "/guard:cf" and the macro ends with "GUARD_CF".
    To keep things consistent, it would make sense to name the option "guard-cf".
    However, there's already "-c"/"control-flow-guard" in genpeimg for this flag,
    and genpeimg shares all other options with peflags so far.
    So, follow genpeimg and go with "-c" and "--control-flow-guard".
    
    This is motivated by mingw-w64 and llvm v16 gaining support for
    CFG (Control Flow Guard).


Diff:
---
 configure.ac |  2 +-
 peflags.c    | 12 ++++++++++--
 2 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/configure.ac b/configure.ac
index 0ab6b53943bd..d06f8d5f7746 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2,7 +2,7 @@
 # configure.ac for rebase
 
 AC_PREREQ([2.64])
-AC_INIT([rebase], [4.6.2], [cygwin@cygwin.com])
+AC_INIT([rebase], [4.6.3], [cygwin@cygwin.com])
 AC_CONFIG_AUX_DIR([build-aux])
 AC_CONFIG_SRCDIR([peflags.c])
 AC_PREFIX_DEFAULT([/usr])
diff --git a/peflags.c b/peflags.c
index b1cd7a851e43..93eaa0b81577 100644
--- a/peflags.c
+++ b/peflags.c
@@ -121,7 +121,7 @@ static const symbolic_flags_t pe_symbolic_flags[] = {
   CF(0x0800, no-bind),
 /*CF(0x1000, reserved_0x1000),*/
   CF(0x2000, wdmdriver),
-/*CF(0x4000, reserved_0x4000),*/
+  CF(0x4000, control-flow-guard),
   CF(0x8000, tsaware),
   {0, 0, 0}
 };
@@ -182,6 +182,7 @@ sizeof_values_t sizeof_vals[5] = {
 static struct option long_options[] = {
   {"dynamicbase",  optional_argument, NULL, 'd'},
   {"high-entropy-va", optional_argument, NULL, 'e'},
+  {"control-flow-guard", optional_argument, NULL, 'c'},
   {"forceinteg",   optional_argument, NULL, 'f'},
   {"nxcompat",     optional_argument, NULL, 'n'},
   {"no-isolation", optional_argument, NULL, 'i'},
@@ -204,7 +205,7 @@ static struct option long_options[] = {
   {NULL, no_argument, NULL, 0}
 };
 static const char *short_options
-	= "d::e::f::n::i::s::b::W::t::w::l::S::x::X::y::Y::z::T:vhV";
+	= "d::e::c::f::n::i::s::b::W::t::w::l::S::x::X::y::Y::z::T:vhV";
 
 static void short_usage (FILE *f);
 static void help (FILE *f);
@@ -706,6 +707,11 @@ parse_args (int argc, char *argv[])
 	                         optarg,
 	                         IMAGE_DLLCHARACTERISTICS_HIGH_ENTROPY_VA);
 	  break;
+	case 'c':
+	  handle_pe_flag_option (long_options[option_index].name,
+	                         optarg,
+	                         IMAGE_DLLCHARACTERISTICS_GUARD_CF);
+	  break;
 	case 'n':
 	  handle_pe_flag_option (long_options[option_index].name,
 	                         optarg,
@@ -1079,6 +1085,8 @@ help (FILE *f)
 "  -e,\n"
 "  --high-entropy-va  [BOOL]   Image is compatible with 64-bit address space\n"
 "                              layout randomization (ASLR).\n"
+"  -c,\n"
+"  --control-flow-guard [BOOL] Image supports Control Flow Guard.\n"
 "  -f, --forceinteg   [BOOL]   Code integrity checks are enforced.\n"
 "  -n, --nxcompat     [BOOL]   Image is compatible with data execution\n"
 "                              prevention (DEP).\n"


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2023-04-18  7:38 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-04-18  7:38 [rebase - The rebase tool, core of the automatic rebase facility during postinstall] branch master, updated. 73c83a42d2efafd99fbee28b037fc28e75c5268b Corinna Vinschen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).