From dcf5a8e28cd887bec3202ae8b0779a8c6611cd30 Mon Sep 17 00:00:00 2001 From: akallabeth Date: Wed, 30 Oct 2024 19:56:36 +0100 Subject: [PATCH] [warnings] fix -Wswitch-default --- channels/cliprdr/client/cliprdr_main.c | 5 ++++- channels/drdynvc/client/drdynvc_main.c | 4 ++++ channels/encomsp/client/encomsp_main.c | 2 ++ channels/location/server/location_main.c | 4 ++++ channels/rail/client/rail_main.c | 2 ++ channels/rdp2tcp/client/rdp2tcp_main.c | 4 ++++ channels/rdpdr/client/rdpdr_main.c | 2 ++ channels/rdpecam/server/camera_device_enumerator_main.c | 4 ++++ channels/rdpecam/server/camera_device_main.c | 4 ++++ channels/rdpemsc/server/mouse_cursor_main.c | 4 ++++ channels/rdpsnd/client/oss/rdpsnd_oss.c | 2 ++ channels/rdpsnd/client/rdpsnd_main.c | 2 ++ channels/serial/client/serial_main.c | 3 ++- channels/smartcard/client/smartcard_main.c | 2 ++ channels/telemetry/server/telemetry_main.c | 4 ++++ channels/tsmf/client/tsmf_main.c | 2 ++ channels/tsmf/client/tsmf_media.c | 4 ++++ channels/urbdrc/client/data_transfer.c | 6 ++++++ client/X11/xf_event.c | 2 ++ client/X11/xf_rail.c | 2 ++ client/X11/xf_window.c | 2 ++ client/common/client_cliprdr_file.c | 2 ++ libfreerdp/codec/test/TestFreeRDPCodecProgressive.c | 4 ++++ libfreerdp/common/settings_str.c | 8 ++++++++ libfreerdp/core/credssp_auth.c | 2 ++ libfreerdp/core/freerdp.c | 6 ++++++ libfreerdp/core/gateway/rpc_client.c | 5 +++++ libfreerdp/core/gateway/rpc_fault.c | 2 ++ libfreerdp/core/gateway/tsg.c | 2 ++ libfreerdp/core/gateway/websocket.c | 3 +++ libfreerdp/core/nego.c | 2 ++ libfreerdp/core/orders.c | 3 ++- libfreerdp/core/peer.c | 4 ++++ libfreerdp/core/settings.c | 2 ++ libfreerdp/crypto/base64.c | 2 ++ libfreerdp/crypto/tls.c | 7 +++++++ libfreerdp/gdi/gdi.c | 2 ++ libfreerdp/utils/gfx.c | 2 ++ libfreerdp/utils/smartcard_pack.c | 8 ++++++++ server/proxy/pf_channel.c | 2 ++ server/proxy/pf_server.c | 1 + winpr/libwinpr/comm/comm_ioctl.c | 2 ++ winpr/libwinpr/ncrypt/ncrypt_pkcs11.c | 2 ++ winpr/libwinpr/pipe/pipe.c | 2 ++ winpr/libwinpr/sspi/Negotiate/negotiate.c | 2 ++ winpr/libwinpr/sspi/Schannel/schannel_openssl.c | 2 ++ winpr/libwinpr/sspi/sspi.c | 4 ++++ winpr/libwinpr/sspi/sspi_winpr.c | 2 ++ winpr/libwinpr/sysinfo/sysinfo.c | 2 ++ winpr/libwinpr/utils/asn1/asn1.c | 8 ++++++-- winpr/libwinpr/winsock/winsock.c | 6 ++++++ winpr/libwinpr/wtsapi/wtsapi.c | 2 ++ 52 files changed, 164 insertions(+), 5 deletions(-) diff --git a/channels/cliprdr/client/cliprdr_main.c b/channels/cliprdr/client/cliprdr_main.c index eccbd0908..f1b64aa23 100644 --- a/channels/cliprdr/client/cliprdr_main.c +++ b/channels/cliprdr/client/cliprdr_main.c @@ -967,6 +967,8 @@ static VOID VCAPITYPE cliprdr_virtual_channel_open_event_ex(LPVOID lpUserParam, case CHANNEL_EVENT_USER: break; + default: + break; } if (error && cliprdr && cliprdr->context->rdpcontext) @@ -1086,7 +1088,8 @@ static VOID VCAPITYPE cliprdr_virtual_channel_init_event_ex(LPVOID lpUserParam, WLog_ERR(TAG, "cliprdr_virtual_channel_event_terminated failed with error %" PRIu32 "!", error); - + break; + default: break; } diff --git a/channels/drdynvc/client/drdynvc_main.c b/channels/drdynvc/client/drdynvc_main.c index 4fb9f800e..62ff674e5 100644 --- a/channels/drdynvc/client/drdynvc_main.c +++ b/channels/drdynvc/client/drdynvc_main.c @@ -509,6 +509,8 @@ static UINT dvcman_channel_close(DVCMAN_CHANNEL* channel, BOOL perRequest, BOOL break; case DVC_CHANNEL_CLOSED: break; + default: + break; } return error; @@ -1543,6 +1545,8 @@ static void VCAPITYPE drdynvc_virtual_channel_open_event_ex(LPVOID lpUserParam, case CHANNEL_EVENT_USER: break; + default: + break; } if (error && drdynvc && drdynvc->rdpcontext) diff --git a/channels/encomsp/client/encomsp_main.c b/channels/encomsp/client/encomsp_main.c index e725872f7..54a25149e 100644 --- a/channels/encomsp/client/encomsp_main.c +++ b/channels/encomsp/client/encomsp_main.c @@ -1026,6 +1026,8 @@ static VOID VCAPITYPE encomsp_virtual_channel_open_event_ex(LPVOID lpUserParam, case CHANNEL_EVENT_USER: break; + default: + break; } if (error && encomsp && encomsp->rdpcontext) diff --git a/channels/location/server/location_main.c b/channels/location/server/location_main.c index 6186eb512..d2c86e771 100644 --- a/channels/location/server/location_main.c +++ b/channels/location/server/location_main.c @@ -356,6 +356,8 @@ static UINT location_server_context_poll_int(LocationServerContext* context) case LOCATION_OPENED: error = location_process_message(location); break; + default: + break; } return error; @@ -423,6 +425,8 @@ static DWORD WINAPI location_server_thread_func(LPVOID arg) break; } break; + default: + break; } } diff --git a/channels/rail/client/rail_main.c b/channels/rail/client/rail_main.c index 89e7433c1..abca0005f 100644 --- a/channels/rail/client/rail_main.c +++ b/channels/rail/client/rail_main.c @@ -554,6 +554,8 @@ static VOID VCAPITYPE rail_virtual_channel_open_event_ex(LPVOID lpUserParam, DWO case CHANNEL_EVENT_USER: break; + default: + break; } if (error && rail && rail->rdpcontext) diff --git a/channels/rdp2tcp/client/rdp2tcp_main.c b/channels/rdp2tcp/client/rdp2tcp_main.c index e59adf47b..e98aa14d4 100644 --- a/channels/rdp2tcp/client/rdp2tcp_main.c +++ b/channels/rdp2tcp/client/rdp2tcp_main.c @@ -249,6 +249,8 @@ static void VCAPITYPE VirtualChannelOpenEventEx(LPVOID lpUserParam, DWORD openHa (void)SetEvent(plugin->writeComplete); free(pData); break; + default: + break; } } @@ -312,6 +314,8 @@ static VOID VCAPITYPE VirtualChannelInitEventEx(LPVOID lpUserParam, LPVOID pInit case CHANNEL_EVENT_TERMINATED: channel_terminated(plugin); break; + default: + break; } } diff --git a/channels/rdpdr/client/rdpdr_main.c b/channels/rdpdr/client/rdpdr_main.c index 0263d415e..56b806390 100644 --- a/channels/rdpdr/client/rdpdr_main.c +++ b/channels/rdpdr/client/rdpdr_main.c @@ -2029,6 +2029,8 @@ static VOID VCAPITYPE rdpdr_virtual_channel_open_event_ex(LPVOID lpUserParam, DW case CHANNEL_EVENT_USER: break; + default: + break; } if (error && rdpdr && rdpdr->rdpcontext) diff --git a/channels/rdpecam/server/camera_device_enumerator_main.c b/channels/rdpecam/server/camera_device_enumerator_main.c index 3fac4f47a..500e14861 100644 --- a/channels/rdpecam/server/camera_device_enumerator_main.c +++ b/channels/rdpecam/server/camera_device_enumerator_main.c @@ -348,6 +348,8 @@ static UINT enumerator_server_context_poll_int(CamDevEnumServerContext* context) case ENUMERATOR_OPENED: error = enumerator_process_message(enumerator); break; + default: + break; } return error; @@ -415,6 +417,8 @@ static DWORD WINAPI enumerator_server_thread_func(LPVOID arg) break; } break; + default: + break; } } diff --git a/channels/rdpecam/server/camera_device_main.c b/channels/rdpecam/server/camera_device_main.c index 8a33172ce..1d15dfe89 100644 --- a/channels/rdpecam/server/camera_device_main.c +++ b/channels/rdpecam/server/camera_device_main.c @@ -501,6 +501,8 @@ static UINT device_server_context_poll_int(CameraDeviceServerContext* context) case CAMERA_DEVICE_OPENED: error = device_process_message(device); break; + default: + break; } return error; @@ -568,6 +570,8 @@ static DWORD WINAPI device_server_thread_func(LPVOID arg) break; } break; + default: + break; } } diff --git a/channels/rdpemsc/server/mouse_cursor_main.c b/channels/rdpemsc/server/mouse_cursor_main.c index 8d7e55787..9713a25ff 100644 --- a/channels/rdpemsc/server/mouse_cursor_main.c +++ b/channels/rdpemsc/server/mouse_cursor_main.c @@ -305,6 +305,8 @@ static UINT mouse_cursor_server_context_poll_int(MouseCursorServerContext* conte case MOUSE_CURSOR_OPENED: error = mouse_cursor_process_message(mouse_cursor); break; + default: + break; } return error; @@ -372,6 +374,8 @@ static DWORD WINAPI mouse_cursor_server_thread_func(LPVOID arg) break; } break; + default: + break; } } diff --git a/channels/rdpsnd/client/oss/rdpsnd_oss.c b/channels/rdpsnd/client/oss/rdpsnd_oss.c index f10803b4d..281696250 100644 --- a/channels/rdpsnd/client/oss/rdpsnd_oss.c +++ b/channels/rdpsnd/client/oss/rdpsnd_oss.c @@ -83,6 +83,8 @@ static int rdpsnd_oss_get_format(const AUDIO_FORMAT* format) case 16: return AFMT_S16_LE; + default: + break; } break; diff --git a/channels/rdpsnd/client/rdpsnd_main.c b/channels/rdpsnd/client/rdpsnd_main.c index ec2ee0efe..7b9127a9b 100644 --- a/channels/rdpsnd/client/rdpsnd_main.c +++ b/channels/rdpsnd/client/rdpsnd_main.c @@ -1225,6 +1225,8 @@ static VOID VCAPITYPE rdpsnd_virtual_channel_open_event_ex(LPVOID lpUserParam, D case CHANNEL_EVENT_USER: break; + default: + break; } if (error && rdpsnd && rdpsnd->rdpcontext) diff --git a/channels/serial/client/serial_main.c b/channels/serial/client/serial_main.c index 6ea2ec28e..d2cbbc5b4 100644 --- a/channels/serial/client/serial_main.c +++ b/channels/serial/client/serial_main.c @@ -107,7 +107,8 @@ static UINT32 GetLastErrorToIoStatus(SERIAL_DEVICE* serial) case ERROR_TIMEOUT: return STATUS_TIMEOUT; - /* no default */ + default: + break; } WLog_Print(serial->log, WLOG_DEBUG, "unexpected last-error: 0x%08" PRIX32 "", GetLastError()); diff --git a/channels/smartcard/client/smartcard_main.c b/channels/smartcard/client/smartcard_main.c index 00e559a98..2095c43ca 100644 --- a/channels/smartcard/client/smartcard_main.c +++ b/channels/smartcard/client/smartcard_main.c @@ -455,6 +455,8 @@ static UINT smartcard_process_irp(SMARTCARD_DEVICE* smartcard, IRP* irp, BOOL* h case SCARD_IOCTL_GETTRANSMITCOUNT: asyncIrp = TRUE; break; + default: + break; } pContext = smartcard_call_get_context(smartcard->callctx, element->operation.hContext); diff --git a/channels/telemetry/server/telemetry_main.c b/channels/telemetry/server/telemetry_main.c index cf5fa1a55..e6d759ffc 100644 --- a/channels/telemetry/server/telemetry_main.c +++ b/channels/telemetry/server/telemetry_main.c @@ -225,6 +225,8 @@ static UINT telemetry_server_context_poll_int(TelemetryServerContext* context) case TELEMETRY_OPENED: error = telemetry_process_message(telemetry); break; + default: + break; } return error; @@ -292,6 +294,8 @@ static DWORD WINAPI telemetry_server_thread_func(LPVOID arg) break; } break; + default: + break; } } diff --git a/channels/tsmf/client/tsmf_main.c b/channels/tsmf/client/tsmf_main.c index f32e2fb7c..05151434a 100644 --- a/channels/tsmf/client/tsmf_main.c +++ b/channels/tsmf/client/tsmf_main.c @@ -357,6 +357,8 @@ static UINT tsmf_on_data_received(IWTSVirtualChannelCallback* pChannelCallback, This message is not supported in this channel. */ processed = TRUE; break; + default: + break; } if (!processed) diff --git a/channels/tsmf/client/tsmf_media.c b/channels/tsmf/client/tsmf_media.c index d2371dc79..ff7460f0b 100644 --- a/channels/tsmf/client/tsmf_media.c +++ b/channels/tsmf/client/tsmf_media.c @@ -684,6 +684,8 @@ static BOOL tsmf_sample_playback(TSMF_SAMPLE* sample) case TSMF_MAJOR_TYPE_AUDIO: ret = tsmf_sample_playback_audio(sample) && tsmf_sample_queue_ack(sample); break; + default: + break; } } else @@ -712,6 +714,8 @@ static BOOL tsmf_sample_playback(TSMF_SAMPLE* sample) { break; } + default: + break; } sample->ack_time = ack_anticipation_time; diff --git a/channels/urbdrc/client/data_transfer.c b/channels/urbdrc/client/data_transfer.c index d9ad5e759..e37ac84ae 100644 --- a/channels/urbdrc/client/data_transfer.c +++ b/channels/urbdrc/client/data_transfer.c @@ -669,6 +669,8 @@ static UINT urb_control_transfer(IUDEVICE* pdev, GENERIC_CHANNEL_CALLBACK* callb case URB_CONTROL_TRANSFER_NONEXTERNAL: break; + default: + break; } /** SetupPacket 8 bytes */ @@ -1178,6 +1180,8 @@ static UINT urb_os_feature_descriptor_request(IUDEVICE* pdev, GENERIC_CHANNEL_CA case USBD_TRANSFER_DIRECTION_IN: break; + default: + break; } WLog_Print(urbdrc->log, WLOG_DEBUG, @@ -1529,6 +1533,8 @@ static UINT urb_control_feature_request(IUDEVICE* pdev, GENERIC_CHANNEL_CALLBACK case USBD_TRANSFER_DIRECTION_IN: bmRequestType |= 0x80; break; + default: + break; } switch (command) diff --git a/client/X11/xf_event.c b/client/X11/xf_event.c index c8e4a1c80..6765b6ced 100644 --- a/client/X11/xf_event.c +++ b/client/X11/xf_event.c @@ -1149,6 +1149,8 @@ static BOOL xf_event_suppress_events(xfContext* xfc, xfAppWindow* appWindow, con case LMS_TERMINATING: /* Already sent RDP end move to server. Allow events to pass. */ break; + default: + break; } return FALSE; diff --git a/client/X11/xf_rail.c b/client/X11/xf_rail.c index 049164524..089557c42 100644 --- a/client/X11/xf_rail.c +++ b/client/X11/xf_rail.c @@ -1010,6 +1010,8 @@ static UINT xf_rail_server_local_move_size(RailClientContext* context, y = localMoveSize->posY; /* FIXME: local keyboard moves not working */ return CHANNEL_RC_OK; + default: + break; } if (localMoveSize->isMoveSizeStart) diff --git a/client/X11/xf_window.c b/client/X11/xf_window.c index aa8adaaa5..d4bb28b95 100644 --- a/client/X11/xf_window.c +++ b/client/X11/xf_window.c @@ -1254,6 +1254,8 @@ void xf_ShowWindow(xfContext* xfc, xfAppWindow* appWindow, BYTE state) XMapWindow(xfc->display, appWindow->handle); break; + default: + break; } /* Save the current rail state of this window */ diff --git a/client/common/client_cliprdr_file.c b/client/common/client_cliprdr_file.c index dff6deb19..eaf268caa 100644 --- a/client/common/client_cliprdr_file.c +++ b/client/common/client_cliprdr_file.c @@ -1254,6 +1254,8 @@ static UINT cliprdr_file_context_server_file_contents_response( (const char*)file_contents_response->requestedData, file_contents_response->cbRequested); break; + default: + break; } HashTable_Remove(file_context->request_table, diff --git a/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c b/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c index 23d1fc514..3b0cda61b 100644 --- a/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c +++ b/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c @@ -234,6 +234,8 @@ static int test_image_fill_quarter(BYTE* pDstData, int nDstStep, int nWidth, int width = nWidth / 2; height = nHeight / 2; break; + default: + return -1; } test_image_fill(pDstData, nDstStep, x, y, width, height, 0xFF000000); @@ -866,6 +868,8 @@ static int test_progressive_decode(PROGRESSIVE_CONTEXT* progressive, EGFX_SAMPLE clippingRect.right = g_Width; clippingRect.bottom = g_Height / 2; break; + default: + return -1; } for (UINT16 index = 0; index < region->numTiles; index++) diff --git a/libfreerdp/common/settings_str.c b/libfreerdp/common/settings_str.c index 4841049e1..769ac53f4 100644 --- a/libfreerdp/common/settings_str.c +++ b/libfreerdp/common/settings_str.c @@ -86,6 +86,8 @@ BOOL freerdp_settings_clone_keys(rdpSettings* dst, const rdpSettings* src) return FALSE; } break; + default: + return FALSE; } } return TRUE; @@ -234,6 +236,8 @@ BOOL freerdp_settings_print_diff(wLog* log, DWORD level, const rdpSettings* sett } } break; + default: + break; } } return rc; @@ -312,6 +316,8 @@ void freerdp_settings_dump(wLog* log, DWORD level, const rdpSettings* settings) WLog_Print(log, level, "%s [POINTER]: '%p'", cur->str, sval); } break; + default: + break; } } } @@ -333,6 +339,8 @@ void freerdp_settings_free_keys(rdpSettings* dst, BOOL cleanup) (void)freerdp_settings_set_pointer_len(dst, (FreeRDP_Settings_Keys_Pointer)cur->id, NULL, 0); break; + default: + break; } } } diff --git a/libfreerdp/core/credssp_auth.c b/libfreerdp/core/credssp_auth.c index a9b79adb8..098192fb0 100644 --- a/libfreerdp/core/credssp_auth.c +++ b/libfreerdp/core/credssp_auth.c @@ -413,6 +413,8 @@ int credssp_auth_authenticate(rdpCredsspAuth* auth) case AUTH_STATE_FINAL: WLog_ERR(TAG, "context in invalid state!"); return -1; + default: + break; } /* input buffer will be null on first call, diff --git a/libfreerdp/core/freerdp.c b/libfreerdp/core/freerdp.c index caf9d9ed7..a311d3b1a 100644 --- a/libfreerdp/core/freerdp.c +++ b/libfreerdp/core/freerdp.c @@ -507,6 +507,8 @@ wMessageQueue* freerdp_get_message_queue(freerdp* instance, DWORD id) queue = input->queue; } break; + default: + break; } return queue; @@ -542,6 +544,8 @@ int freerdp_message_queue_process_message(freerdp* instance, DWORD id, wMessage* case FREERDP_INPUT_MESSAGE_QUEUE: status = input_message_queue_process_message(context->input, message); break; + default: + break; } return status; @@ -566,6 +570,8 @@ int freerdp_message_queue_process_pending_messages(freerdp* instance, DWORD id) case FREERDP_INPUT_MESSAGE_QUEUE: status = input_message_queue_process_pending_messages(context->input); break; + default: + break; } return status; diff --git a/libfreerdp/core/gateway/rpc_client.c b/libfreerdp/core/gateway/rpc_client.c index 291eadca0..30702c2d0 100644 --- a/libfreerdp/core/gateway/rpc_client.c +++ b/libfreerdp/core/gateway/rpc_client.c @@ -266,6 +266,8 @@ static int rpc_client_recv_pdu_int(rdpRpc* rpc, RPC_PDU* pdu) case VIRTUAL_CONNECTION_STATE_FINAL: break; + default: + break; } } else if (rpc->State < RPC_CLIENT_STATE_CONTEXT_NEGOTIATED) @@ -314,6 +316,9 @@ static int rpc_client_recv_pdu_int(rdpRpc* rpc, RPC_PDU* pdu) WLog_ERR(TAG, "tsg_proxy_begin failure"); return -1; } + break; + default: + break; } status = 1; diff --git a/libfreerdp/core/gateway/rpc_fault.c b/libfreerdp/core/gateway/rpc_fault.c index e9ef0e570..dcc201cc0 100644 --- a/libfreerdp/core/gateway/rpc_fault.c +++ b/libfreerdp/core/gateway/rpc_fault.c @@ -347,6 +347,8 @@ static UINT32 rpc_map_status_code_to_win32_error_code(UINT32 code) case nca_s_fault_no_client_stub: return nca_s_fault_no_client_stub; + default: + break; } return code; diff --git a/libfreerdp/core/gateway/tsg.c b/libfreerdp/core/gateway/tsg.c index fa3169fad..3d3496a5b 100644 --- a/libfreerdp/core/gateway/tsg.c +++ b/libfreerdp/core/gateway/tsg.c @@ -2585,6 +2585,8 @@ BOOL tsg_recv_pdu(rdpTsg* tsg, const RPC_PDU* pdu) case TSG_STATE_FINAL: break; + default: + break; } return rc; diff --git a/libfreerdp/core/gateway/websocket.c b/libfreerdp/core/gateway/websocket.c index b2a2d6de8..e4208fa2a 100644 --- a/libfreerdp/core/gateway/websocket.c +++ b/libfreerdp/core/gateway/websocket.c @@ -571,6 +571,9 @@ int websocket_read(BIO* bio, BYTE* pBuffer, size_t size, websocket_context* enco pBuffer += status; size -= status; } + break; + default: + break; } } /* should be unreachable */ diff --git a/libfreerdp/core/nego.c b/libfreerdp/core/nego.c index 61e2079a9..3679475f0 100644 --- a/libfreerdp/core/nego.c +++ b/libfreerdp/core/nego.c @@ -842,6 +842,8 @@ int nego_recv(rdpTransport* transport, wStream* s, void* extra) if (!nego_process_negotiation_failure(nego, s)) return -1; break; + default: + return -1; } } else if (li == 6) diff --git a/libfreerdp/core/orders.c b/libfreerdp/core/orders.c index 204a23438..31be3e66a 100644 --- a/libfreerdp/core/orders.c +++ b/libfreerdp/core/orders.c @@ -3237,7 +3237,8 @@ BOOL update_write_switch_surface_order(wStream* s, const SWITCH_SURFACE_ORDER* s if (!Stream_EnsureRemainingCapacity(s, inf)) return FALSE; - Stream_Write_UINT16(s, switch_surface->bitmapId); /* bitmapId (2 bytes) */ + WINPR_ASSERT(switch_surface->bitmapId <= UINT16_MAX); + Stream_Write_UINT16(s, (UINT16)switch_surface->bitmapId); /* bitmapId (2 bytes) */ return TRUE; } static BOOL diff --git a/libfreerdp/core/peer.c b/libfreerdp/core/peer.c index 46c22bb7a..915d1200f 100644 --- a/libfreerdp/core/peer.c +++ b/libfreerdp/core/peer.c @@ -1363,6 +1363,8 @@ static const char* os_major_type_to_string(UINT16 osMajorType) return "Android platform"; case OSMAJORTYPE_CHROME_OS: return "Chrome OS platform"; + default: + break; } return "Unknown platform"; @@ -1408,6 +1410,8 @@ static const char* os_minor_type_to_string(UINT16 osMinorType) return "Pseudo X Server"; case OSMINORTYPE_WINDOWS_RT: return "Windows RT"; + default: + break; } return "Unknown version"; diff --git a/libfreerdp/core/settings.c b/libfreerdp/core/settings.c index 040938c7c..c7aad0acf 100644 --- a/libfreerdp/core/settings.c +++ b/libfreerdp/core/settings.c @@ -1034,6 +1034,8 @@ rdpSettings* freerdp_settings_new(DWORD flags) case 9: cache.cacheMaximumCellSize = 256; break; + default: + goto out_fail; } if (!freerdp_settings_set_pointer_array(settings, FreeRDP_GlyphCache, x, &cache)) diff --git a/libfreerdp/crypto/base64.c b/libfreerdp/crypto/base64.c index a2a23c41b..f63dc1321 100644 --- a/libfreerdp/crypto/base64.c +++ b/libfreerdp/crypto/base64.c @@ -378,6 +378,8 @@ static INLINE char* base64_encode_ex(const BYTE* WINPR_RESTRICT alphabet, if (pad) *p++ = '='; break; + default: + break; } if (crLf && length % 3) diff --git a/libfreerdp/crypto/tls.c b/libfreerdp/crypto/tls.c index c9687feb4..26c8c091f 100644 --- a/libfreerdp/crypto/tls.c +++ b/libfreerdp/crypto/tls.c @@ -164,6 +164,8 @@ static int bio_rdp_tls_write(BIO* bio, const char* buf, int size) case SSL_ERROR_SSL: BIO_clear_flags(bio, BIO_FLAGS_SHOULD_RETRY); break; + default: + break; } } @@ -187,6 +189,7 @@ static int bio_rdp_tls_read(BIO* bio, char* buf, int size) if (status <= 0) { + switch (error) { case SSL_ERROR_NONE: @@ -227,6 +230,8 @@ static int bio_rdp_tls_read(BIO* bio, char* buf, int size) case SSL_ERROR_SYSCALL: BIO_clear_flags(bio, BIO_FLAGS_SHOULD_RETRY); break; + default: + break; } } @@ -1047,6 +1052,8 @@ int freerdp_tls_connect(rdpTls* tls, BIO* underlying) case TLS_HANDSHAKE_ERROR: case TLS_HANDSHAKE_VERIFY_ERROR: return -1; + default: + return -1; } return pollAndHandshake(tls); diff --git a/libfreerdp/gdi/gdi.c b/libfreerdp/gdi/gdi.c index 495c12092..3593df5f5 100644 --- a/libfreerdp/gdi/gdi.c +++ b/libfreerdp/gdi/gdi.c @@ -1006,6 +1006,8 @@ static BOOL gdi_surface_frame_marker(rdpContext* context, surfaceFrameMarker->frameId); } + break; + default: break; } diff --git a/libfreerdp/utils/gfx.c b/libfreerdp/utils/gfx.c index cf459ae6b..cacf7cb65 100644 --- a/libfreerdp/utils/gfx.c +++ b/libfreerdp/utils/gfx.c @@ -89,6 +89,8 @@ const char* rdpgfx_get_codec_id_string(UINT16 codecId) case RDPGFX_CODECID_CAPROGRESSIVE_V2: return "RDPGFX_CODECID_CAPROGRESSIVE_V2"; + default: + break; } return "RDPGFX_CODECID_UNKNOWN"; diff --git a/libfreerdp/utils/smartcard_pack.c b/libfreerdp/utils/smartcard_pack.c index b7cafb3ef..0ae0aff2c 100644 --- a/libfreerdp/utils/smartcard_pack.c +++ b/libfreerdp/utils/smartcard_pack.c @@ -118,6 +118,8 @@ static LONG smartcard_ndr_read(wStream* s, BYTE** data, size_t min, size_t eleme case NDR_PTR_FIXED: required = min; break; + default: + return STATUS_INVALID_PARAMETER; } if (!Stream_CheckAndLogRequiredLength(TAG, s, required)) @@ -153,6 +155,8 @@ static LONG smartcard_ndr_read(wStream* s, BYTE** data, size_t min, size_t eleme case NDR_PTR_FIXED: len = (UINT32)min; break; + default: + return STATUS_INVALID_PARAMETER; } if (min > len) @@ -223,6 +227,8 @@ static LONG smartcard_ndr_write(wStream* s, const BYTE* data, UINT32 size, UINT3 case NDR_PTR_FIXED: required = 0; break; + default: + return SCARD_E_INVALID_PARAMETER; } if (!Stream_EnsureRemainingCapacity(s, required + dataLen + 4)) @@ -240,6 +246,8 @@ static LONG smartcard_ndr_write(wStream* s, const BYTE* data, UINT32 size, UINT3 break; case NDR_PTR_FIXED: break; + default: + return SCARD_E_INVALID_PARAMETER; } if (data) diff --git a/server/proxy/pf_channel.c b/server/proxy/pf_channel.c index bbbb5549b..77fc3f80b 100644 --- a/server/proxy/pf_channel.c +++ b/server/proxy/pf_channel.c @@ -140,6 +140,8 @@ PfChannelResult channelTracker_update(ChannelStateTracker* tracker, const BYTE* case CHANNEL_TRACKER_DROP: result = PF_CHANNEL_RESULT_DROP; break; + default: + break; } if (lastPacket) diff --git a/server/proxy/pf_server.c b/server/proxy/pf_server.c index 417a8e094..5816a9f76 100644 --- a/server/proxy/pf_server.c +++ b/server/proxy/pf_server.c @@ -454,6 +454,7 @@ static BOOL pf_server_receive_channel_data_hook(freerdp_peer* peer, UINT16 chann case PF_CHANNEL_RESULT_DROP: return TRUE; case PF_CHANNEL_RESULT_ERROR: + default: return FALSE; } diff --git a/winpr/libwinpr/comm/comm_ioctl.c b/winpr/libwinpr/comm/comm_ioctl.c index 360d85b4b..1691ad5bc 100644 --- a/winpr/libwinpr/comm/comm_ioctl.c +++ b/winpr/libwinpr/comm/comm_ioctl.c @@ -661,6 +661,8 @@ static BOOL s_CommDeviceIoControl(HANDLE hDevice, DWORD dwIoControlCode, LPVOID } break; } + default: + break; } CommLog_Print( diff --git a/winpr/libwinpr/ncrypt/ncrypt_pkcs11.c b/winpr/libwinpr/ncrypt/ncrypt_pkcs11.c index 8fc9aed33..4dcd6acd9 100644 --- a/winpr/libwinpr/ncrypt/ncrypt_pkcs11.c +++ b/winpr/libwinpr/ncrypt/ncrypt_pkcs11.c @@ -242,6 +242,8 @@ static CK_RV object_load_attributes(NCryptP11ProviderHandle* provider, CK_SESSIO "] even after buffer allocation", CK_RV_error_string(rv), rv); break; + default: + break; } return rv; } diff --git a/winpr/libwinpr/pipe/pipe.c b/winpr/libwinpr/pipe/pipe.c index 21280a1bf..c4140d9e6 100644 --- a/winpr/libwinpr/pipe/pipe.c +++ b/winpr/libwinpr/pipe/pipe.c @@ -139,6 +139,8 @@ static BOOL PipeRead(PVOID Object, LPVOID lpBuffer, DWORD nNumberOfBytesToRead, case EWOULDBLOCK: SetLastError(ERROR_NO_DATA); break; + default: + break; } } diff --git a/winpr/libwinpr/sspi/Negotiate/negotiate.c b/winpr/libwinpr/sspi/Negotiate/negotiate.c index b99b0d52b..ace8d83e4 100644 --- a/winpr/libwinpr/sspi/Negotiate/negotiate.c +++ b/winpr/libwinpr/sspi/Negotiate/negotiate.c @@ -822,6 +822,8 @@ static SECURITY_STATUS SEC_ENTRY negotiate_InitializeSecurityContextW( else context->state = NEGOTIATE_STATE_FINAL; break; + default: + break; } WLog_DBG(TAG, "Negotiated mechanism: %s", negotiate_mech_name(context->mech->oid)); diff --git a/winpr/libwinpr/sspi/Schannel/schannel_openssl.c b/winpr/libwinpr/sspi/Schannel/schannel_openssl.c index 8c395aa34..8ce3578f3 100644 --- a/winpr/libwinpr/sspi/Schannel/schannel_openssl.c +++ b/winpr/libwinpr/sspi/Schannel/schannel_openssl.c @@ -67,6 +67,8 @@ static char* openssl_get_ssl_error_string(int ssl_error) case SSL_ERROR_SSL: return "SSL_ERROR_SSL"; + default: + break; } return "SSL_ERROR_UNKNOWN"; diff --git a/winpr/libwinpr/sspi/sspi.c b/winpr/libwinpr/sspi/sspi.c index 2b4ddda5b..f57d70156 100644 --- a/winpr/libwinpr/sspi/sspi.c +++ b/winpr/libwinpr/sspi/sspi.c @@ -453,6 +453,8 @@ const char* GetSecurityStatusString(SECURITY_STATUS status) case SEC_I_NO_RENEGOTIATION: return "SEC_I_NO_RENEGOTIATION"; + default: + break; } return NtStatus2Tag((DWORD)status); @@ -477,6 +479,8 @@ BOOL IsSecurityStatusError(SECURITY_STATUS status) case SEC_I_NO_RENEGOTIATION: error = FALSE; break; + default: + break; } return error; diff --git a/winpr/libwinpr/sspi/sspi_winpr.c b/winpr/libwinpr/sspi/sspi_winpr.c index 1a730cf6a..c86055bd1 100644 --- a/winpr/libwinpr/sspi/sspi_winpr.c +++ b/winpr/libwinpr/sspi/sspi_winpr.c @@ -1075,6 +1075,8 @@ static void sspi_ContextBufferFree(void* contextBuffer) case QuerySecurityPackageInfoIndex: FreeContextBuffer_QuerySecurityPackageInfo(contextBuffer); break; + default: + break; } } } diff --git a/winpr/libwinpr/sysinfo/sysinfo.c b/winpr/libwinpr/sysinfo/sysinfo.c index f3cd41795..c2a0f4676 100644 --- a/winpr/libwinpr/sysinfo/sysinfo.c +++ b/winpr/libwinpr/sysinfo/sysinfo.c @@ -1164,6 +1164,8 @@ BOOL IsProcessorFeaturePresentEx(DWORD ProcessorFeature) if (c & C_BIT_PCLMULQDQ) ret = TRUE; + break; + default: break; } } diff --git a/winpr/libwinpr/utils/asn1/asn1.c b/winpr/libwinpr/utils/asn1/asn1.c index e8136a2ce..c21bddcc6 100644 --- a/winpr/libwinpr/utils/asn1/asn1.c +++ b/winpr/libwinpr/utils/asn1/asn1.c @@ -560,6 +560,8 @@ static size_t WinPrAsn1EncIntegerLike(WinPrAsn1Encoder* enc, WinPrAsn1_tag b, Stream_Write_UINT8(s, 4); Stream_Write_INT32_BE(s, value); break; + default: + break; } return 1 + len; } @@ -596,16 +598,18 @@ static size_t WinPrAsn1EncContextualIntegerLike(WinPrAsn1Encoder* enc, WinPrAsn1 { case 2: Stream_Write_UINT8(s, 1); - Stream_Write_INT8(s, value); + Stream_Write_INT8(s, (INT8)value); break; case 3: Stream_Write_UINT8(s, 2); - Stream_Write_INT16_BE(s, value); + Stream_Write_INT16_BE(s, (INT16)value); break; case 5: Stream_Write_UINT8(s, 4); Stream_Write_INT32_BE(s, value); break; + default: + return 0; } return outLen; } diff --git a/winpr/libwinpr/winsock/winsock.c b/winpr/libwinpr/winsock/winsock.c index 435c3bc5e..5eff6ce0e 100644 --- a/winpr/libwinpr/winsock/winsock.c +++ b/winpr/libwinpr/winsock/winsock.c @@ -495,6 +495,8 @@ void WSASetLastError(int iError) case WSAEREMOTE: errno = EREMOTE; break; + default: + break; } } @@ -693,6 +695,8 @@ int WSAGetLastError(void) iError = WSAECONNRESET; break; #endif + default: + break; } /** @@ -1216,6 +1220,8 @@ int _shutdown(SOCKET s, int how) case SD_BOTH: s_how = SHUT_RDWR; break; + default: + break; } if (s_how < 0) diff --git a/winpr/libwinpr/wtsapi/wtsapi.c b/winpr/libwinpr/wtsapi/wtsapi.c index ccd976a95..a6b01feed 100644 --- a/winpr/libwinpr/wtsapi/wtsapi.c +++ b/winpr/libwinpr/wtsapi/wtsapi.c @@ -672,6 +672,8 @@ const CHAR* WTSSessionStateToString(WTS_CONNECTSTATE_CLASS state) return "WTSDown"; case WTSInit: return "WTSInit"; + default: + break; } return "INVALID_STATE"; }