aboutsummaryrefslogtreecommitdiffstats
path: root/lib-src/ntlib.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* * admin/admin.el (set-version, set-copyright): Remove deleted files.Glenn Morris2015-08-151-1/+1
| | | | ; * src/emacs,c, lib-src/ntlib.c: Comment updates.
* Update copyright year to 2015Paul Eggert2015-01-011-1/+1
| | | | Run admin/update-copyright.
* Update copyright year to 2014 by running admin/update-copyright.Paul Eggert2014-01-011-1/+1
|
* Fix bugs in update-game-score, on MS-Windows and elsewhere.Eli Zaretskii2013-08-051-7/+21
| | | | | | | | | | | | | lib-src/update-game-score.c (read_score): Try reading a character before probing the stream for EOF. Initialize score->score to zero, before reading and accumulating the score. (read_scores): Fix logic that determines which value to return. Close the input stream when finished reading the scores (avoids failures in overwriting the file with a new one on MS-Windows, since a file that is open cannot be deleted). lib-src/ntlib.h (rename): Don't undefine. lib-src/ntlib.c (sys_rename): New function, needed for update-game-score.
* MS-Windows followup to last commit.Eli Zaretskii2013-08-041-0/+55
| | | | | | | | | lib-src/ntlib.h: Include fcntl.h. (mkostemp): Declare prototype. (mktemp): Don't redefine. lib-src/ntlib.c (mkostemp): New function. Fixes: debbugs:15015
* Added nt/gnulib.mk and removed kludges from ms-w32.h and ntlib.h.Eli Zaretskii2013-03-311-14/+0
|
* Finished with lib-src compilation, except emacsclientw and emacsclient.res.Eli Zaretskii2013-03-301-3/+23
| | | | Next -- compilation in nt/, and then problems in src/.
* Fix more incompatibilities between MinGW.org and MinGW64 headersEli Zaretskii2013-03-261-0/+4
| | | | | | | | | | | | | | | | | | | | | | | Reported by ׃scar Fuentes in http://lists.gnu.org/archive/html/emacs-devel/2013-03/msg00699.html and in http://lists.gnu.org/archive/html/emacs-devel/2013-03/msg00707.html. nt/inc/ms-w32.h (USE_NO_MINGW_SETJMP_TWO_ARGS) [_W64]: Define to 1. For MinGW64, include sys/types.h and time.h. nt/inc/sys/time.h (struct timeval) [!_W64]: Guard definition with _W64. (struct timezone) [!_TIMEZONE_DEFINED]: Guard definition with _TIMEZONE_DEFINED. nt/addpm.c (_WIN32_IE) [_W64]: For MinGW64, don't define to 0x400. nt/inc/sys/stat.h: Remove _CRTIMP from prototypes of fstat, stat, lstat, and fstatat. lib-src/ntlib.c (struct timespec) [!_TIMEZONE_DEFINED]: Define the struct only if _TIMEZONE_DEFINED is not defined. src/w32term.c (WCRANGE, GLYPHSET): Don't define if _W64 is defined. src/w32.c (REPARSE_DATA_BUFFER): Guard with MAXIMUM_REPARSE_DATA_BUFFER_SIZE being defined.
* Update copyright notices for 2013.Paul Eggert2013-01-011-1/+1
|
* Avoid compiler warnings in lib-src/ntlib.cEli Zaretskii2012-10-171-0/+1
| | | | | src/ntlib.c: Include <mbstring.h>, to avoid compiler warning about _mbspbrk.
* Support x64 build on MS-Windows with MSVC.Fabrice Popineau2012-09-301-0/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | src/w32term.h (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK): Define for x64. (SET_SCROLL_BAR_W32_WINDOW): Cast ID to intptr_t, for compatibility with x64. src/w32term.c (w32_draw_underwave): Don't use GCC extensions for defining an XRectangle structure. src/w32proc.c (RVA_TO_PTR, w32_executable_type): Fix pointer arithmetics for compatibility with x64. src/w32menu.c (add_menu_item): Use UINT_PTR instead of UINT, for compatibility with x64. src/w32heap.h: Adjust prototypes and declarations. src/w32heap.c (RVA_TO_PTR, allocate_heap, sbrk, init_heap) (round_heap): Use DWORD_PTR, ptrdiff_t and size_t instead of DWORD, long, and unsigned long, for compatibility with x64. (allocate_heap) [_WIN64]: Reserve 32GB of memory. (sbrk): Argument is now of type ptrdiff_t. src/w32fns.c (HMONITOR): Condition declaration on _WIN32_WINNT being less than 0x0500. (w32_msg_pump): Use WPARAM type for 'result'. src/w32.c (init_environment, get_emacs_configuration): Support AMD64 architecture. (init_ntproc): Cast arguments of _open_osfhandle to intptr_t, for compatibility with x64. src/vm-limit.c (lim_data): Now size_t. (check_memory_limits): Adjust prototypes of real_morecore and __morecore to receive argument of type ptrdiff_t. Use size_t for five_percent and data_size. src/unexw32.c: Use DWORD_PTR instead of DWORD for file-scope variables, for compatibility with x64. (rva_to_section, offset_to_section, relocate_offset) (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_SECTION_OFFSET) (PTR_TO_RVA, RVA_TO_PTR, OFFSET_TO_PTR, get_section_info) (copy_executable_and_dump_data): Use DWORD_PTR instead of DWORD for compatibility with x64. src/sysdep.c (STDERR_FILENO): Define if not already defined. src/ralloc.c (real_morecore): Argument type is now ptrdiff_t. (__morecore): Argument type is now ptrdiff_t. (ROUNDUP, MEM_ROUNDUP): Use size_t instead of 'unsigned long'. (relinquish): Use ptrdiff_t type for 'excess'. (r_alloc_sbrk): Argument type is now ptrdiff_t. src/makefile.w32-in (HEAPSIZE): Get value from EMACS_HEAPSIZE. (bootstrap-temacs-CMD, bootstrap-temacs-SH): Use $(EMACS_PURESIZE) instead of a literal number. src/gmalloc.c [WINDOWSNT]: Include w32heap.h. (min): Define only if not already defined. src/frame.c (x_report_frame_params): Use EMACS_UINT for the return value of FRAME_X_WINDOW, to fit a 64-bit pointer on 64-bit Windows hosts. src/image.c (x_bitmap_pixmap): Return ptrdiff_t, not int, since 'bitmaps' is a pointer. src/dispextern.h (x_bitmap_pixmap): Adjust prototype. src/alloc.c (gdb_make_enums_visible): Now conditional on __GNUC__. nt/makefile.w32-in ($(TRES)): Use $(EMACS_MANIFEST). nt/inc/sys/socket.h: Don't map Winsock error codes to standard ones that are already defined. nt/inc/ms-w32.h (EMACS_INT, EMACS_UINT, EMACS_INT_MAX, PRIuMAX) (pI, _INTPTR) [_MSC_VER]: Fix definitions for MSVC. [_MSC_VER]: Add pragmas to suppress some MSVC warnings. nt/preprep.c (pfnCheckSumMappedFile, rva_to_section) (offset_to_section, relocate_offset, OFFSET_TO_RVA) (RVA_TO_OFFSET, RVA_TO_SECTION_OFFSET, PTR_TO_RVA) (OFFSET_TO_PTR, ROUND_UP, ROUND_DOWN) (copy_executable_and_move_sections, ADJUST_IMPORT_RVA, main): Use DWORD_PTR instead of DWORD for compatibility with x64. nt/nmake.defs: Support AMD64. (EMACS_HEAPSIZE, EMACS_PURESIZE, EMACS_MANIFEST): New macros. nt/gmake.defs: (EMACS_HEAPSIZE, EMACS_PURESIZE, EMACS_MANIFEST): New macros. nt/addsection.c (pfnCheckSumMappedFile, rva_to_section) (offset_to_section, relocate_offset, OFFSET_TO_RVA) (RVA_TO_OFFSET, RVA_TO_SECTION_OFFSET, PTR_TO_RVA) (OFFSET_TO_PTR, ROUND_UP, ROUND_DOWN) (copy_executable_and_add_section, main): Use DWORD_PTR instead of DWORD, for compatibility with x64. nt/emacs-x64.manifest: New file. nt/emacs-x86.manifest: Renamed from emacs.manifest. lib-src/ntlib.c (gettimeofday): Copy from src/w32.c. lib/gettime. needs this function.
* CommentsGlenn Morris2012-08-091-6/+7
|
* Support symlinks on latest versions of MS-Windows.Eli Zaretskii2012-08-031-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | src/w32.c: Include winioctl.h and aclapi.h. (is_symlink, chase_symlinks, enable_privilege, restore_privilege) (revert_to_self): Forward declarations of static functions. <static BOOL g_b_init_get_security_info>: <g_b_init_create_symbolic_link>: New static flags. (globals_of_w32): Initialize them to zero. (GetSecurityInfo_Proc, CreateSymbolicLink_Proc): New typedefs. (map_w32_filename): Improve commentary. Simplify switch. (SYMBOLIC_LINK_FLAG_DIRECTORY): Define if not defined in system headers (most versions of MinGW w32api don't). (get_security_info, create_symbolic_link) (get_file_security_desc_by_handle, is_symlink, chase_symlinks): New functions. (sys_access, sys_chmod): Call 'chase_symlinks' to resolve symlinks in the argument file name. (sys_access): Call unc_volume_file_attributes only if GetFileAttributes fails with network-related error codes. (sys_rename): Diagnose renaming of a symlink when the user doesn't have the required privileges. (get_file_security_desc_by_name): Renamed from get_file_security_desc. (stat_worker): New function, with most of the guts of 'stat', and with addition of handling of symlinks and support for 'lstat'. If possible, get file's attributes and security information by handle, not by name. Produce S_IFLNK bit for symlinks, when called from 'lstat'. (stat, lstat): New functions, call 'stat_worker'. (symlink, readlink, careadlinkat): Rewritten to create and resolve symlinks when the underlying filesystem supports them. lib/src/ntlib.c (lstat): New function, calls 'stat'. nt/inc/sys/stat.h (S_IFLNK): Define. (S_ISLNK): A non-trivial definition. (lstat): Prototype instead of a macro that redirects to 'stat'. lisp/files.el (file-truename): Don't skip symlink-chasing part on windows-nt. Incorporate the resolution of 8+3 short aliases on Windows into the loop that recursively chases symlinks. Compare directory and its parent case-insensitively on MS-Windows and MS-DOS. etc/NEWS: Announce the symlink support on MS-Windows.
* Add 2012 to FSF copyright years for Emacs filesGlenn Morris2012-01-051-1/+1
|
* w32: Fix some warnings reported by -Wall -Wextra.Juanma Barranquero2011-03-231-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | * lib-src/ntlib.c: Include <ctype.h>. * nt/cmdproxy.c: Include <ctype.h>. (make_absolute): Remove unused variable `i'. * src/w32fns.c (x_set_menu_bar_lines): Remove unused variable `olines'. (w32_wnd_proc): Pass NULL to Windows API, not uninitialized buffer. (Fx_close_connection): Remove unused variable `i'. * src/w32font.c (w32font_draw): Return number of glyphs. (w32font_open_internal): Remove unused variable `i'. (w32font_driver): Add missing initializer. * src/w32menu.c (utf8to16): Remove unused variable `utf16'. (fill_in_menu): Remove unused variable `items_added'. * src/w32term.c (last_mouse_press_frame): Remove static global variable. (w32_clip_to_row): Remove unused variable `f'. (x_delete_terminal): Remove unused variable `i'. * src/w32uniscribe.c (uniscribe_shape): Remove unused variable `nclusters'. (NOTHING): Remove unused static global variable. (uniscribe_check_otf): Remove unused variable `table'. (uniscribe_font_driver): Add missing initializers.
* Fix the MS-Windows build broken by 2011-01-17T19:01:01Z!eggert@cs.ucla.edu ↵Eli Zaretskii2011-01-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | and emacs-23/2010-05-21T19:51:48Z!acm@muc.de. lib/makefile.w32-in: lib/getopt_.h: New files. src/s/ms-w32.h (HAVE_MKTIME): Remove. src/makefile.w32-in (LOCAL_FLAGS): Add -I../lib. (GNULIB): New variable. (LIBS): Add $(GNULIB). $(TEMACS): Depend on $(GNULIB). <top-level>: Fix font-lock disrupted by a lone `"'. src/makefile.w32-in (LOCAL_FLAGS): Add -I../lib. (GETOPTOBJS, GETOPTDEPS): Remove targets. (MOVEMAILOBJS): Replace $(GETOPTOBJS) with ../lib/$(BLD)/libgnu.$(A). ($(BLD)/movemail.exe): Depend on ../lib/getopt.h. (ECLIENTOBJS, ETAGSOBJ, CTAGSOBJ, EBROWSEOBJ): Replace getopt.o and getopt1.o with ../lib/$(BLD)/libgnu.$(A). (clean): Don't remove getopt.h. (getopt.h, $(BLD)/getopt.$(O), $(BLD)/getopt1.$(O)): Remove targets. ($(BLD)/ctags.$(O), $(BLD)/etags.$(O)): Replace getopt.h with $(EMACS_ROOT)/lib/getopt.h. nt/makefile.w32-in (all-other-dirs-nmake, all-other-dirs-gmake) (bootstrap-nmake, bootstrap-gmake, bootstrap-clean-nmake) (bootstrap-clean-gmake, clean-other-dirs-nmake) (clean-other-dirs-gmake, cleanall-other-dirs-nmake) (cleanall-other-dirs-gmake, distclean-other-dirs-nmake) (distclean-other-dirs-gmake, maintainer-clean-other-dirs-nmake) (maintainer-clean-other-dirs-gmake): Recurse into ../lib as well. nt/configure.bat: Create lib/makefile. nt/config.nt (HAVE_MKTIME, BROKEN_MKTIME): Remove. (HAVE_ATTRIBUTE_ALIGNED, HAVE_C99_STRTOLD, HAVE_DECL_GETENV) (HAVE_DECL_LOCALTIME_R, HAVE_WCHAR_T, PACKAGE, VERSION, inline) (_GL_UNUSED, _UNUSED_PARAMETER_): Add definitions, for gnulib.
* Convert consecutive FSF copyright years to ranges.Glenn Morris2011-01-241-2/+1
|
* Nuke arch-tags.Glenn Morris2011-01-151-2/+0
|
* Merge from emacs-23Stefan Monnier2011-01-141-1/+1
|\
| * Add 2011 to FSF/AIST copyright years.Glenn Morris2011-01-021-1/+1
| |
| * Add stubs for Windows, required after CVE-2010-0825 change.Juanma Barranquero2010-04-031-0/+18
| | | | | | | | | | * ntlib.c (getgid, getegid, setegid): New stubs. * ntlib.h (getgid, getegid, setegid): Declare them.
* | Convert some more functions to standard C.Juanma Barranquero2010-07-201-11/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lib-src/emacsclient.c (get_current_dir_name, w32_get_resource) (w32_getenv, w32_set_user_model_id, w32_window_app, w32_execvp) (close_winsock, initialize_sockets, w32_find_emacs_process) (w32_give_focus): * lib-src/ntlib.c (getlogin, getuid, getgid, getegid): * nt/addpm.c (add_registry, main): * nt/cmdproxy.c (get_env_size): * nt/ddeclient.c (main): * nt/runemacs.c (set_user_model_id): * src/alloc.c (emacs_blocked_free, emacs_blocked_malloc) (emacs_blocked_realloc, uninterrupt_malloc): * src/fringe.c (w32_reset_fringes): * src/image.c (convert_mono_to_color_image, lookup_rgb_color) (init_color_table, XPutPixel, jpeg_resync_to_restart_wrapper): * src/sound.c (be2hs, do_play_sound): * src/vm-limit.c (get_lim_data, ret_lim_data): * src/w32term.c (x_free_frame_resources): * src/xfaces.c (x_create_gc, x_free_gc): Convert definitions to standard C.
* | Add stubs for Windows, required after CVE-2010-0825 change.Juanma Barranquero2010-04-031-0/+18
|/ | | | | * ntlib.c (getgid, getegid, setegid): New stubs. * ntlib.h (getgid, getegid, setegid): Declare them.
* Add 2010 to copyright years.Glenn Morris2010-01-131-1/+1
|
* inc/sys/stat.h (struct stat): Change the types of st_uid and st_gid to unsigned.Eli Zaretskii2009-03-211-4/+4
| | | | | | | | | | | | | | | | | | | | | | inc/pwd.h (struct passwd): Change the types of pw_uid and pw_gid to unsigned. (getpwuid): Argument is now unsigned. uid_t is now unsigned. ntlib.c (setuid): Argument is now unsigned. (getuid): Return value is now unsigned. (getpwuid): Argument is now unsigned. (fchown): UID and GID arguments are now unsigned. ntlib.h (fchown): UID and GID arguments are now unsigned. (getuid): Return value is now unsigned. (setuid): Argument is now unsigned. (getpwuid): Remove prototype (it's declared in nt/inc/pwd.h). w32.c (getpwuid): Change argument type to unsigned. (struct w32_id): Change type of `rid' member to unsigned. (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of argument ID to unsigned. All callers changed. (getuid, geteuid, getgid, getegid): Change return type to unsigned.
* Add 2009 to copyright years.Glenn Morris2009-01-081-1/+1
|
* Switch to recommended form of GPLv3 permissions notice.Glenn Morris2008-05-091-8/+7
|
* Include sys/types.h, sys/stat.h, and errno.h.Eli Zaretskii2008-05-091-0/+147
| | | | | (IS_DIRECTORY_SEP): New macro. (convert_time, is_exec, stat): New functions.
* Add 2008 to copyright years.Glenn Morris2008-01-071-1/+1
|
* Switch license to GPLv3 or later.Glenn Morris2007-07-251-1/+1
|
* Update copyright for years from Emacs 21 to present (mainly addingGlenn Morris2007-01-161-2/+2
| | | | 2001).
* Update years in copyright notice; nfc.Thien-Thi Nguyen2006-02-061-1/+2
|
* Update years in copyright notice; nfc.Thien-Thi Nguyen2005-08-071-1/+1
|
* Update FSF's address.Lute Kamstra2005-07-041-2/+2
|
* Add arch taglinesMiles Bader2003-09-011-0/+3
|
* Trailing whitespace deleted.Juanma Barranquero2003-02-041-7/+7
|
* (sleep): Make argument unsigned long.Andrew Innes2000-08-221-1/+1
|
* (getppid): Look for EM_PARENT_PROCESS_ID.Geoff Voelker1998-05-301-1/+1
|
* (getpid): Delete function.Geoff Voelker1997-09-031-6/+0
|
* (getwd): Correct return type.Karl Heuer1996-07-151-1/+1
|
* Include ntlib.h.Geoff Voelker1996-05-031-2/+121
| | | | | | | (nt_sleep): Rename to sleep. (getwd): Return directory. (getlogin, cuserid, getuid, setuid, getpwuid, getpass, fchown, sys_ctime, sys_fopen): New functions.
* (getpid): New function.Geoff Voelker1996-03-191-0/+6
|
* Update FSF's address in the preamble.Erik Naggum1996-01-151-12/+13
|
* Initial revisionRichard M. Stallman1994-11-011-0/+90