1
0
Fork 0
Commit graph

423 commits

Author SHA1 Message Date
Rebecca N. Palmer
31cb65e8d9 Nasal security: add --allow-nasal-read, warn on non-Nasal-readable
Terrasync, prepare for allowing --download-dir

Add unmangled_fg_scenery
2016-10-09 15:21:09 +01:00
James Turner
347a89c1f2 Extend event-input with report-setting.
Can generate feature report data via Nasal callbacks. This is used to
drive the GoFlight LCD / LEDs.
2016-09-28 21:16:24 -05:00
James Turner
2ff476a217 More safe subsystem accessors. 2016-09-27 05:58:47 -05:00
James Turner
100e8bf2b2 Further SGPath API usage improvements. 2016-07-15 16:49:13 +01:00
James Turner
8e875b22f5 fgValidatePath uses SGPath 2016-07-03 23:59:40 +01:00
James Turner
fc3d47cd34 More std::ifstream -> sg_ifstream 2016-07-03 23:48:44 +01:00
James Turner
6d0c2070fd Use future-proof SGPath APIs.
Remove uses of .str(), .c_str() and some other methods of SGPath.
Pass SGPath directly where possible, or explicitly convert to the
appropriate 8-bit encoding.
2016-06-28 10:08:38 +01:00
James Turner
7a36b96790 Update from SimGear API change
- support new HTTP cancellation API
2016-04-14 09:33:28 +01:00
James Turner
733e3b3f0c HTTP subsystem has a default name.
Switch to using type-safe accessors now.
2016-03-24 15:08:38 +00:00
Rebecca N. Palmer
f749953493 Nasal security: don't break file dialogs
Include the directory itself when allowing reading
Don't kill the script on a denied directory read
2016-02-09 23:17:41 +00:00
Rebecca N. Palmer
74356e84f7 Nasal security: make directory() use fgValidatePath
Being able to list arbitrary directories is a privacy violation;
existing in-fgdata uses of this are all permitted paths
(i.e. not Terrasync; FileSelector doesn't use it)
2016-02-06 21:26:05 +00:00
James Turner
caead66ba6 Nasal support for VIA / Discontinuity 2015-12-11 13:43:25 -06:00
James Turner
2af076e6cb Add airport dynamics manager
- decouple dynamic airport data from the static (nav-db) data.
2015-12-05 00:25:29 +00:00
James Turner
fc887b106b Checkpoint - ground-net skips the cache 2015-12-01 14:01:32 +00:00
James Turner
6954360dfa Merge /u/r-harrison/flightgear/ branch next into next
http://sourceforge.net/p/flightgear/flightgear/merge-requests/21/
2015-11-29 21:51:08 +00:00
Richard Harrison
0368e9a003 Fix indentation and use naIsNil to determine if _globals is nil 2015-11-29 19:15:24 +01:00
Rebecca N. Palmer
91dc448875 Simplify fgValidatePath + minor fix (requires simgear update)
Drop fgNormalizePath, use realpath() only
As this makes it accept relative paths, always use the returned
(absolute) version for the actual file operation to avoid check-to-use
races, or where this is not possible (NasalSGPath) explicitly reject
relative paths
Fix: do_save is a write, not a read
2015-11-21 21:37:19 +00:00
Rebecca N. Palmer
79f1da6bef Nasal: use SG_LOG for security error messages to avoid truncation
These are often too long for naRuntimeError's 128-char limit:
http://sourceforge.net/p/flightgear/mailman/flightgear-devel/thread/55B55856.2030709%40worldwideweb2.nl/#msg34319969
2015-08-14 21:37:28 +01:00
Rebecca N. Palmer
e296ea5fe0 Nasal security: document that symlinks are no longer followed 2015-07-25 10:15:31 +01:00
James Turner
c07ce6d9bc Explicit AppKit includes for Mac. 2015-04-11 21:59:29 +01:00
Richard Harrison
9ba892962c Closedown crash prevention 2015-04-10 23:51:32 +02:00
Rebecca N. Palmer
a4aff2cb82 remove checkIORules(), replaced by check in fgInitAllowedPaths() 2015-03-13 18:10:31 +00:00
Rebecca N. Palmer
9002696195 Make fgValidatePath always return std::string, not char * 2015-03-13 18:07:24 +00:00
Rebecca N. Palmer
d718d5f3cb Move Nasal io.open to flightgear, and make it use fgValidatePath 2015-03-13 18:02:46 +00:00
Rebecca N. Palmer
6a30e7086e Stop using property listener for fgValidatePath
This was insecure: while removelistener() won't remove it, there are
other ways to remove a listener from Nasal
2015-03-13 17:54:44 +00:00
James Turner
564177933b FlightPlan activation, delegate hook. 2015-02-23 13:41:50 +00:00
Rebecca N. Palmer
193f2a3fbc Fix hang in Nasal->C++->Nasal calls
https://bugs.debian.org/750939
http://sourceforge.net/p/flightgear/mailman/message/32969200/
2015-01-18 22:23:21 +00:00
James Turner
e9849ecae9 Remove a warning, let Nasal itself warn if needed. 2015-01-10 19:35:50 +00:00
James Turner
e94371ebfc Route-path bug fixes.
- explicit aircraft performance categories for turn radius
- allow overflight leg course behaviour to be selected
2015-01-08 19:46:04 +00:00
James Turner
a1169e4f75 Expose waypoint heading/course to Nasal. 2014-12-21 09:53:32 +03:00
James Turner
01622dd1f4 Fix flight-plan course and distance computations.
Always use the RoutePath system for course and distance computations
in the flight plan, so that dynamic segments are handled correctly.
2014-12-08 17:56:15 +00:00
James Turner
d806b68706 find waypoints in the flight plan. 2014-12-04 15:43:32 +00:00
bcoconni
2122e9eee3 Save a memory allocation each time a property node is wrapped in Nasal. Instead use a direct access to the reference counter and explicitely delete the node if the ref counter is decremented to zero during the ghost destruction. 2014-11-23 14:53:54 +01:00
Thomas Geymayer
0b9e72eb87 Nasal: move IOrules check to better place and exit on failure. 2014-09-19 18:22:47 +02:00
Thomas Geymayer
96a2673dd8 Canvas: expose set/clearFocusElement to Nasal. 2014-08-25 21:54:20 +02:00
Thomas Geymayer
4b59c152ea canvas::Text: expose more text/cursor methods to Nasal. 2014-08-23 16:06:33 +02:00
Thomas Geymayer
aa1b3c1e31 Expose canvas::Element::setFocus to Nasal. 2014-08-12 17:57:01 +02:00
Thomas Geymayer
6713830254 Nasal Timer: prevent warning on restarting oneshot timer in callback. 2014-08-11 00:31:18 +02:00
Thomas Geymayer
271cf1420d Canvas: support for pointer grab. 2014-08-11 00:25:26 +02:00
Thomas Geymayer
08263dc1ec Canvas: expose layout contents margins and alignment to Nasal. 2014-08-05 00:19:40 +02:00
Thomas Geymayer
4f2032a9c2 Canvas: export preventDefault to Nasal and use to stop events on DesktopGroup. 2014-07-30 17:17:24 +02:00
Thomas Geymayer
49df413444 Canvas: Keyboard events and input focus.
Also allow events on desktop group if no window is receiving
events. Currently it is not possible to prevent events handled
by the desktop group to further propagate (eg. to normal
control input).
2014-07-30 00:00:03 +02:00
Thomas Geymayer
0646d5f443 Nasal: expose LayoutItem visibility methods. 2014-07-21 00:27:20 +02:00
Thomas Geymayer
a673f4a5f9 Nasal: update for simgear changes. 2014-07-21 00:26:54 +02:00
Thomas Geymayer
5f4ad79954 canvas.Layout: expose missing methods to Nasal. 2014-07-16 11:24:53 +02:00
Thomas Geymayer
a94ad46dc0 Nasal: expose missing Canvas::setLayout 2014-06-26 18:26:43 +02:00
Thomas Geymayer
a66e30aa04 Nasal: Limit SGPath::create_dir access rights to 0755 2014-06-26 16:03:10 +02:00
Thomas Geymayer
694df4b337 Fix compiler warning (naRuntimeError does not return...) 2014-06-23 00:42:17 +02:00
Thomas Geymayer
1b55ab5f40 Nasal: expose SGCondition using nasal::Ghost and improved error checking. 2014-06-22 15:37:48 +02:00
Thomas Geymayer
1d5f229653 Nasal: set CustomEvent::bubbles. 2014-06-21 00:24:57 +02:00